gpt4 book ai didi

regex - 如何将命名空间前缀与正则表达式匹配

转载 作者:行者123 更新时间:2023-12-04 16:52:15 25 4
gpt4 key购买 nike

我真正想做的是使用正则表达式匹配标签和属性的所有命名空间前缀。

例如:

<foo:person bar:id="43">
text text <nomatch:free text
<baz:name>
text nomatch:free> text
</baz:name>
text nomatch:free="44" text
<age bae:years="44" />
text
</foo:person>

我想要的是只提取以下前缀:foo, baz, bad, bae, bar

我找不到实现这一点的正则表达式。

请注意,正则表达式不应硬编码名称 foo、baz、bad、bae、bar...

最佳答案

像这样的东西?

[<]([^:]+)

将前缀(在尖括号之后和冒号之前)放入第 1 组。

在更仔细地观察之后,我发现我误解了这个问题。
[<](((\w+):\w+)(\s+(\w+):\w+="\d+"\s*[\/])?)>

这将导致 $3 组和可能 $5 组的结果。我认为这会做到。

哎呀,错过了?
 [<](((\w+):\w+)(\s+(\w+):\w+="\d+"\s*[\/]?)?)>

关于regex - 如何将命名空间前缀与正则表达式匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23939069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com