xml格式的正则表达式

时间:2015-03-10 11:28:47

标签: java regex

我正在尝试为下一个xml字符串获取两个正则表达式:

<string name="mytag1">mycontent1</string>
<string name="mytag2">mycontent2</string>
<string name="mytag3">mycontent3</string>

我首先需要提取所有标记,结果:

mytag1
mytag2
mytag3

第二个是提取所有内容,结果:

mycontent1
mycontent2
mycontent3

我尝试了很多正则表达式但没有成功,有什么想法吗?知道这有点棘手......谢谢!

1 个答案:

答案 0 :(得分:0)

如果XML中的string标记的结构非常平坦且简单 [1] ,则可以使用正则表达式:

<string name="(mytag\d+)">([^<]*)</string>

圆括号

  • \1 name属性
  • \2内容(前提是没有嵌套)

[1] 通常,XML超出了正则表达式的强大功能。正则表达式适用于快速词典分析,但绝对会使递归语言负担过重。