我有以下字符串:
Lorem ipsum Test dolor sit amet, consetetur sadipscing elitr, sed diam nonumy <a href="http://Test.com/url">Test</a> eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd sed Test dolores et ea rebum. Stet clita kasd gubergren, no sea <a href="http://url.com">Test xyz</a> takimata sanctus est Lorem ipsum dolor sit amet.
现在我将替换标签之外的字符串“Test”而不是标签之间的字符串(例如替换为“1234”)。
Lorem ipsum 1234 dolor sit amet, consetetur sadipscing elitr, sed diam nonumy <a href="http://Test.com/url">Test</a> eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd sed 1234 dolores et ea rebum. Stet clita kasd gubergren, no sea <a href="http://url.com">Test xyz</a> takimata sanctus est Lorem ipsum dolor sit amet.
我从这个正则表达式开始:(?!<a[^>]*>)(Test)([^<])(?!</a>)
但是有两个问题没有解决:
- 标签内的文本“测试”也被替换(例如
<a href="http://Test.com/url">
) - 标签之间的文本是否与搜索的文本不完全匹配,它也会被替换(例如
<a href="http://url">Test xyz</a>
)
我希望有人有解决这个问题的方法。