我刚刚开始弄清楚正则表达式是什么,但我的时间非常有限!
我在xml中有一个字符串,如:<myid>1234</myid>
,现在我的xml在txt中,它曾经是一个xml文档。
如何制作模式以从<myid>
标记中提取1234。
答案 0 :(得分:1)
如果真的看起来像这样:
<myid>1234</myid>
...你可以像这样提取它:
Matcher match = Pattern.compile("<myid>(\d+)</myid>").matcher(str);
...然后重复使用匹配器,从捕获组中获取值。
但是 有一个原因 每个人都在告诉你使用正确的解析器。上面有很多方法可能会失败,两者都不恰当地匹配,并且无法匹配。
正确的解决方案是使XML有效,然后解析它,并使用XPath或类似的方法来读取值。
如果您确实有一些工具要求您发送无效的XML,则需要替换该工具。但更可能的是,这是一些误解。