正则表达式在Scala中不匹配

时间:2015-07-07 14:15:06

标签: regex scala

我想拆分带空格的camelCase字符串。

"ClassicalMusicArtist" -> "Classical Music Artist"

我应该可以将"/([a-z](?=[A-Z]))/g"替换为"$1 "regex101)来完成此操作。

但是我的正则表达式没有得到任何匹配:

val regex = "/([a-z](?=[A-Z]))/g".r
val s = "ClassicalMusicArtist"

regex.replaceAllIn(s, "$1 ") // -> Returns "ClassicalMusicArtist"
regex.findFirstIn(s) // -> Returns None

我做错了什么?我使用另一种语言的正则表达式取得了成功,并且无法弄清楚为什么我没有得到任何匹配。

1 个答案:

答案 0 :(得分:1)

好的我明白了。

在scala中,正则表达式必须是val regex = "([a-z](?=[A-Z]))".r,而不是前导/和修饰符。