我需要从java中的以下字符串中删除HTML标签
String text = "<html><head></head><body>hi x>a and y<b and z>c</body></html>";
我可以用正则表达式做到这一点。但它也删除了字符串中的“b 和 z”。因为它被认为是标签。
我需要从java中的以下字符串中删除HTML标签
String text = "<html><head></head><body>hi x>a and y<b and z>c</body></html>";
我可以用正则表达式做到这一点。但它也删除了字符串中的“b 和 z”。因为它被认为是标签。
当然它会删除“b and z”。它应该删除该文本。因为在 HTML 中,属性不必被引用,也不需要值。b
元素也是如此,and
并且z
是属性(没有值)。这就是 HTML 解析器可以识别的内容。
当然,and
并且z
并不是b
元素真正可接受的属性,但就句法良好格式而言,您应该将其识别b
为一个元素。
如果您不希望将其删除,则需要编写<
as <
。无论如何,这就是编写正确 HTML 的方法。:)
附录
(是的,我知道上面在评论中引用了著名的“无法使用正则表达式解析 HTML”答案,但问题中的<
vs<
值得在答案中指出,恕我直言。)