关于.net:XML节点名称清理代码

关于.net:XML节点名称清理代码

XML node name clean up code

我试图基于表中的数据字段创建XML文件,并且希望基于表中字段的值来命名节点。 问题在于,有时在该列中输入的值包含空格和节点名称中不允许的其他字符。

是否有人有任何代码可以清理传入的字符串并用替换文本替换无效字符,以便可以在另一端取反并恢复原始值?

我正在使用.net(vb.net,但我可以读取/转换C#)


您没有在原始帖子中说什么语言,因此这是一个正则表达式模式,可以帮助您入门。 这是QUICK,所以您需要对其进行测试。

1
([^A-Za-z0-9])|(\s)|(\t+)|(\c+)

事实上,我要说的是,除非您完全控制数据,否则翻译过程将永远无法进行。 因此,我第二次将原始数据存储为属性或子节点。


如果原始值是非法的,则将其存储为属性中的节点名称可能会更容易。 这样,您就不必担心翻译复杂或复杂。


推荐阅读