【Scala】 正規表現のパターンマッチ
環境 Scala 2.11.6 CentOS7.0
パターンマッチに正規表現を使える。
グルーピングしている部分にマッチする。
scala> val r = """^(\d{4})-(\d{2})-(\d{2})$""".r r: scala.util.matching.Regex = ^(\d{4})-(\d{2})-(\d{2})$ scala> "2015-08-19" match { | case r(year, month, day) => { | Some(year + "/" + month + "/" + day) | } | case s => None | } res1: Option[String] = Some(2015/08/19) scala> scala> "2015-8-19" match { | case r(year, month, day) => { | Some(year + "/" + month + "/" + day) | } | case s => None | } res2: Option[String] = None