有没有办法使用原始匹配值替换文本中的某些字符串?
例如,我想用小数替换所有整数,如下例所示:
"hello 45 hello 4 bye" --> "hello 45.0 hello 4.0 bye"
我可以将所有数字与findAllIn
匹配,然后替换它们,但我想知道是否有更好的解决方案。
答案 0 :(得分:2)
使用RegularExpressions,您可以使用$1
来获取第一个捕获组的结果(在括号中):
val regex = "(\\d+)".r
val text = "hello 45 hello 4 bye"
val result = regex.replaceAllIn(text, "$1.0")
// result: String = hello 45.0 hello 4.0 bye
答案 1 :(得分:0)
使用replaceAllIn
函数的replacer
重载: