正则表达式替换特定标记内特定字符后的所有内容

时间:2015-10-15 20:03:44

标签: regex coda

我有一个带有值的XML元素列表。我想删除特定字符后的任何字符或数字(在本例中为句点),但仅限于 someTag 元素中。

<someTag>123.3</someTag>
<someTag>8623.34</someTag>

我可以使用:\.(?=[^<]*</someTag>)定位标记内的句点。但是,我无法弄清楚如何删除句点及其后的所有内容,以便最终结果为:

<someTag>123</someTag>
<someTag>8623</someTag>

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

您的模式仅与期间匹配。你必须捕获它之后的所有内容,直到标签关闭。试试这个:

(\.[^\<]+)<\/someTag>

[^\<]+是一个否定的字符集,这意味着它将匹配不在集合中的任何内容。 [^\<]+匹配,直到遇到<个字符。

Regex101