scala.util.matching.Regexはバグじゃないよ
ついったで@kmizuさんに教えて頂きましたよ。
グループを含まない正規表現の場合は、case reg1() => ...のように書けばよいとのことです。
scala> val reg1="abc.+$".r reg1: scala.util.matching.Regex = abc.+$ scala> val reg2="abc(.+)$".r reg2: scala.util.matching.Regex = abc(.+)$ scala> "abcdef" match { case reg1() => print("reg1") case reg2(x) => print("reg2") case _ => print("none") } reg1
自分のextractorに対する理解が足りてなかったようです。
unapplySeqで返すSome(List())の要素数とパターン引数が一致するようにcaseを書く必要があるとのことです。