在groovy中使用正则表达式提取子字符串

在groovy中使用正则表达式提取子字符串,第1张

概述如果我在一些文本中有以下模式: def articleContent = "<![CDATA[ Hellow World ]]>" 我想提取“Hellow World”部分,所以我使用以下代码来匹配它: def contentRegex = "<![CDATA[ /(.)*/ ]]>"def contentMatcher = ( articleContent =~ contentRegex ) 如果我在一些文本中有以下模式:

def articleContent =  "<![cdaTA[ Hellow World ]]>"

我想提取“Hellow World”部分,所以我使用以下代码来匹配它:

def contentRegex = "<![cdaTA[ /(.)*/ ]]>"def contentMatcher = ( articleContent =~ contentRegex )println contentMatcher[0]

但是,由于正则表达式似乎没有正常工作,所以我会继续获得一个空指针异常,对于“任何文本的平静”,正确的正则表达式是什么,以及如何从字符串中收集呢?

解决方法 尝试:

def result = (articleContent =~ /<!\[cdaTA\[(.+)]]>/)[ 0 ]​[ 1 ]

但是我担心你正在用正则表达式解析xml.如果这个cdata是更大的有效xml文档的一部分,最好使用一个xml解析器

总结

以上是内存溢出为你收集整理的在groovy中使用正则表达式提取子字符串全部内容,希望文章能够帮你解决在groovy中使用正则表达式提取子字符串所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1246235.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存