我正在开发一个Java应用程序,其中对于其中一个功能,我们需要在文本中添加ID,哪个用户是来自前端的输入。
示例(自编):
<list id="cke-1234-345">
//List elements
</list>
<p id="cke-345-456">Hello world</p>
现在问题是,这些ID是唯一的,在后端不需要我们进行文本比较。我想要做的是删除所有这些id="cke*"
。
注意:所有ID都以cke
开头。
我知道如何替换所有HTML标记,但我只想从内部删除id="cke*
。
任何人都可以帮我解决这个问题。非常感谢..: - )
答案 0 :(得分:1)
这个答案伴随着you should not use regular expressions to parse HTML的强烈警告。使用正确的HTML解析库。
您可以使用以下正则表达式:
hackyCleanedString = str.replaceAll("\\s*id=\"cke[^\">]*\"", "");
然而,可能会有许多角落情况(甚至是非角落情况)无法正确处理,例如:出现在文本节点中的字符串。