【发布时间】:2017-08-11 04:46:31
【问题描述】:
我有一个 400 行的 XML 字符串,它确实包含重复两次的以下标签。我想删除那些标签
<Address>
<Location>Beach</Location>
<Dangerous>
<Flag>N</Flag>
</Dangerous>
</Address>
我正在使用下面的正则表达式模式,但它没有替换
xmlRequest.replaceAll("<Address>.*?</Address>$","");
我可以通过在“查找/替换”对话框中选择Regular Expression 单选按钮旁边的[x].matches newline 复选框在记事本++ 中执行此操作
谁能建议我的正则表达式有什么问题
【问题讨论】:
-
再一次:不使用正则表达式处理 XML/HTML。使用 XML 工具。 XML/HTML 是一种上下文无关的语言,正则表达式不是处理此类语言的正确工具。正则表达式只能处理常规语言。
-
Jsoup 似乎是个不错的选择
-
你能发布预期的输出吗?
-
@efektive,我需要完全删除 400 行 xml 字符串中的那个块