特定xml标记内的重复捕获组

时间:2017-02-15 19:13:27

标签: regex

是的,我知道,我不应该在xml中使用正则表达式,但我需要这样做,而且只是练习了解有关正则表达式的更多信息。

我想捕获所有xml属性,但仅限于特定标记内。

在这种情况下标记“a”。

在这里你可以看到我在尝试的东西: https://regex101.com/r/qZGjbL/1

这是我正在使用的正则表达式

="\s*([^"]*)"[\s|>|\/]

它选择了我的xml中的所有属性,但我不知道如何将其限制为仅应用于我的“a”标记内。

提前致谢。

1 个答案:

答案 0 :(得分:1)

例如。输入:

<a>
    <iden asd="foo" bde="thing"> <bla bla="blabla"/> 
</a> 
<b>
    <iden asd="foo" bde="thing"> <bla bla="blabla"/>  
</b>

首先找到您感兴趣的代码的内容。([\W\w]*?)</a>

<iden asd="foo" bde="thing"> <bla bla="blabla"/> 

然后找到该内容中的属性。 ="\s*([^"]*)"[\s|>|/]

foo
thing
blabla