在我的某些数据库值中隐藏了一些十六进制值会导致我遇到麻烦,是否有人使用RegEx清除这些值?
这是我得到的错误:
'', hexadecimal value 0x19, is an invalid character.
这篇文章完全解释了我的问题,但我正在寻找一个RegEx解决方案: http://seattlesoftware.wordpress.com/2008/09/11/hexadecimal-value-0-is-an-invalid-character/
答案 0 :(得分:4)
不应通过连接构建XML字符串,而应使用.NET提供的XML处理类。这些将正确编码危险字符作为XML实体,并生成格式良好的XML。
此外,正则表达式对XML处理效果不佳。
答案 1 :(得分:1)
我可以,但它也会发生任何死亡,牛肉,蜜蜂,be,b,亲爱的dea,任何十进制数字,任何a,b,c,d,e
...
I oul, ut it woul lso ny ourn o , , , , , th in r, ny iml gt, ny , , , ,
...
请参阅?
答案 2 :(得分:0)
你需要像......那样的东西吗?
Regex regex = new Regex("0x\\d\\d");
String Input = "this0x34is my 0x45 test 0x11";
string Result = regex.Replace(Input, " ");
答案 3 :(得分:0)
我知道你希望Regex,但你尝试过System.Security.SecurityElement.Escape
吗?
我相信这种方法专门针对您的用例。