【问题标题】:XML node name clean up codeXML 节点名称清理代码
【发布时间】:2010-09-10 05:38:07
【问题描述】:

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

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

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

【问题讨论】:

    标签: .net xml vb.net


    【解决方案1】:

    如果原始值作为属性中的节点名称是非法的,则存储原始值可能会更容易。这样您就不用担心有某种复杂的往返翻译。

    【讨论】:

      【解决方案2】:

      事实上,我什至会说,除非您完全控制数据,否则任何翻译过程都不会奏效。所以我第二次将原始数据存储为属性或子节点。

      【讨论】:

        【解决方案3】:

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

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

        【讨论】:

        • 感谢那个正则表达式,我会用它来看看我能做些什么。
        • YW。我对它做了一点改动。同样,这很快,我绝对没有测试它。希望它会有所帮助。
        • 我认为正则表达式可能会起作用,但是您打算如何进行翻译?
        • 这就是问题所在。翻译回来很困难,我认为容易出错。这就是为什么我建议以某种方式存储原始值(作为属性值)。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-05
        相关资源
        最近更新 更多