scala正则表达式获取匹配到的字符串

正则表达式获取匹配到的字符串

//需要匹配出来的地方用括号括起来
val pattern="""(.*)\[(.*)\]""".r  //新建一个正则表达式
val pattern(ele,str)="fff[ascdrewr]"
println(s"$ele,$str")

这样有个问题,当匹配不到会抛异常


img_472bb8212a091656a6f6ab4cd24bec3d.png
image.png

使用模式匹配

val pattern="""(.*)\[(.*)\]""".r
"fff" match {
  case pattern(ele,str) =>println(s"$ele,$str")
  case _ => println("not match")
}

这样当匹配不到的时候会打印not match

你可能感兴趣的:(scala)