我试图使用正则表达式和模式匹配从字符串中提取一个值:
无论我怎么尝试,它仍然会抛出MatchError。但是,如果我尝试以下方法:
但是我想知道是否可以在模式匹配中使用前后预查/回顾运算符。
提前感谢你的帮助。
val reg = """((?<=a)b)""".r
"ab" match { case reg(x) => x }
无论我怎么尝试,它仍然会抛出MatchError。但是,如果我尝试以下方法:
reg.findAllIn("ab").mkString
这个正则表达式的表现符合预期:res28: String = b
当然,我也可以简单地更改正则表达式并添加另一个组:
val reg = """(a)(b)""".r
"ab" match { case reg(_,x) => x }
但是我想知道是否可以在模式匹配中使用前后预查/回顾运算符。
提前感谢你的帮助。