如何解决如何从字符串中替换所有遵循正则表达式模式的部分?
我有模式\+\d.AT
和一些字符串,例如“ test 123 +1 AT test end”。而且我需要删除所有遵循正则表达式模式的部分。我该怎么做?现在,如果我的代码在字符串中有一部分遵循模式,那么我的代码将删除部分遵循模式。
val comment = "test 123 +1 AT test end"
if("\\+\\d.AT".toRegex().containsMatchIn(comment)) {
val regexpString = comment.replace("\\+\\d.AT".toRegex(),"")
print(regexpString)
}
解决方法
通过在模式的前后放置.*
来匹配整个字符串,并在要保留的部分周围放置一个捕获组。然后在替换中使用向后引用,将其复制到结果中。
val regexpString = comment.replace(".*(\\+\\d.AT).*".toRegex(),"$1")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。