在Java中从(文本)文件中删除标记和内容

在Java中从(文本)文件中删除标记和内容,java,regex,xml,Java,Regex,Xml,用Java从文件中删除xml标记和它们之间的内容的最佳方法是什么?我想首先将文件读入字符串变量,然后使用replaceAll()和regex删除相关部分,然后将剩余部分写入另一个文件 此外,如果要移除的零件看起来像: <tag id="abc" name="xyz"> content goes here.. </tag> 内容在这里。。 那么与之匹配的最佳正则表达式模式是什么?您可以使用以下正则表达式从变量str中删除XML标记: str = str.repla

用Java从文件中删除xml标记和它们之间的内容的最佳方法是什么?我想首先将文件读入字符串变量,然后使用
replaceAll()
和regex删除相关部分,然后将剩余部分写入另一个文件

此外,如果要移除的零件看起来像:

<tag id="abc" name="xyz">
  content goes here..
</tag>

内容在这里。。

那么与之匹配的最佳正则表达式模式是什么?

您可以使用以下正则表达式从变量
str
中删除XML标记:

str = str.replaceAll("<[^>]*>", "")
str=str.replaceAll(“]*>”,“”)

“然后使用replaceAll()”->,”。简言之,使用适当的XML解析器,不惜一切代价避免使用正则表达式来解决此类问题。另一个强制性链接:如上所述,很难将这些标记与正则表达式匹配。我看到的最好的方法就是比较行,看看它们是否共享标签的特征,比如,然后忽略它们。也许不是最好的,但值得一试。