小编Mil*_*use的帖子

使用C#Regular表达式替换XML元素内容

我正在编写一些处理日志记录xml数据的代码,我希望能够替换文档中某些元素(例如密码)的内容.我宁愿不序列化和解析文档,因为我的代码将处理各种模式.

样本输入文件:

doc#1:

   <user>
       <userid>jsmith</userid>
       <password>myPword</password>
    </user>
Run Code Online (Sandbox Code Playgroud)

doc#2:

<secinfo>
       <ns:username>jsmith</ns:username>
       <ns:password>myPword</ns:password>
 </secinfo>
Run Code Online (Sandbox Code Playgroud)

我希望我的输出是:

输出文档#1:

<user>
       <userid>jsmith</userid>
       <password>XXXXX</password>
 </user>
Run Code Online (Sandbox Code Playgroud)

输出文档#2:

<secinfo>
       <ns:username>jsmith</ns:username>
       <ns:password>XXXXX</ns:password>
 </secinfo>
Run Code Online (Sandbox Code Playgroud)

由于我将要处理的文档可能有各种模式,我希望能够找到一个很好的通用正则表达式解决方案,它可以找到带有密码的元素并相应地屏蔽内容.

我可以使用正则表达式和C#解决这个问题,还是有更有效的方法?

.net c# regex xml parsing

4
推荐指数
3
解决办法
2万
查看次数

标签 统计

.net ×1

c# ×1

parsing ×1

regex ×1

xml ×1