我是靠谱客的博主 动听手链,最近开发中收集的这篇文章主要介绍java正则表达式 读取xml文件_用于匹配无效xml文件中的属性值的正则表达式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

我有一些无效的XML(属性值中的<>&“”字符) . 我需要在C#中将它们解析为正确的XML文件 .

我能想到的唯一方法是转义属性中的无效字符 . 这适用于<>和&(&lt;,&gt;,&amp;) . 但是我在检测和更改属性中的“”时遇到问题 .

现在我正在使用此正则表达式来匹配属性值:

/="(.*?)"

我的测试用例是这样的:

3" test="dfsdf"/>

正如您在测试中看到的那样,匹配在引号“1”停止

如果我将正则表达式更改为贪婪 /="(.*)" 我匹配整行(因此包括同一行上的其他属性 .

很难定义xml属性的“结束引用” . 在我的测试用例中,它可以结束:

“(空间)

“/>

" otherAttribute=" value“

我知道我不需要解析这个无效的xml(甚至无效的sql查询,因为它使用双空格和==“1”的引号.Thas是因为它来自另一个将所有数据保存在CDATA中的应用程序但是对于我正在做的事情,我需要将CDATA部分解析为正确的XML(转义无效字符)

如果有人能在RegEx或RegEx和C#的组合中解决这个问题,请提前感谢!

最后

以上就是动听手链为你收集整理的java正则表达式 读取xml文件_用于匹配无效xml文件中的属性值的正则表达式的全部内容,希望文章能够帮你解决java正则表达式 读取xml文件_用于匹配无效xml文件中的属性值的正则表达式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部