我喜欢搜索类似stack <"sometag"> overflow</"sometag">
的内容
并替换为stack <"sometag">underflow</"sometag">
它是大html文本的一部分,我喜欢用Java来做(我可以使用的服务器端技术有一些限制)。我搜索了一下,发现了这篇文章:
How to find/replace text in html while preserving html tags/structure
答案之一是建议使用特殊标记进行标记,生成纯文本,然后使用正则表达式。最后取消标记,然后将字符串恢复为html。但它假定字符串位于文本中的给定位置。我无法知道这些字符串在哪里以及可以重复多少次。
当然,在这里不适合直接使用正则表达式搜索和替换,因为我需要保留html标签。
提前致谢!
最佳答案
我会有点担心做正则表达式来更改HTML文件。太多事情会出错。
您的HTML文件是否符合XML? (例如XHTML?)。
在这种情况下,最好使用XSL或基于查询的解析器进行XML级别的转换。
关于java - html在服务器端搜索并替换,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4696600/