我有一个包含一些自定义标签的文件,我想编写一个正则表达式来提取标签之间的字符串。例如,如果我的标签是:
[customtag]String I want to extract[/customtag]
我将如何编写正则表达式来仅提取标签之间的字符串。这段代码似乎是朝着正确方向迈出的一步:
Pattern p = Pattern.compile("[customtag](.+?)[/customtag]");
Matcher m = p.matcher("[customtag]String I want to extract[/customtag]");
不知道下一步该怎么做。有任何想法吗?谢谢。
原文由 b10hazard 发布,翻译遵循 CC BY-SA 4.0 许可协议
你在正确的轨道上。现在您只需要提取所需的组,如下所示:
如果你想提取多个命中,试试这个:
但是,我同意正则表达式不是这里的最佳答案。我会使用 XPath 来查找我感兴趣的元素。有关详细信息,请参阅 The Java XPath API 。