小编Sco*_*ott的帖子

使用Regex从XML中删除命名空间引用

我有一个正则表达式从XML中删除xmlns引用.当匹配标记时它可以正常工作,但如果xmlns引用位于单个标记中,它也会删除"/".

这是正则表达式:

"<(.*?) xmlns[:=].*?>", "<$1>"
Run Code Online (Sandbox Code Playgroud)

当我在这行xml上使用正则表达式时:

<ns22:someTagName xmlns:ns22="http://exampledatatypes.com"></ns22:someTagName>
Run Code Online (Sandbox Code Playgroud)

我得到了我想要的东西:

<ns22:someTagName></ns22:someTagName>
Run Code Online (Sandbox Code Playgroud)

当我在这行xml上使用正则表达式时:

<ns22:someTagName xmlns:ns22="http://exampledatatypes.com"/>
Run Code Online (Sandbox Code Playgroud)

我得到这个无效的XML:

<ns22:someTagName>
Run Code Online (Sandbox Code Playgroud)

它删除了引用罚款,但它用"/"结束.

谢谢你的帮助,斯科特

regex xml

1
推荐指数
1
解决办法
1万
查看次数

标签 统计

regex ×1

xml ×1