RegEx从C#中的字符串中删除十六进制字符

本文关键字:删除 十六进制 字符 字符串 RegEx | 更新日期: 2023-09-27 17:59:19

我的一些DB值中隐藏了一些十六进制值,这给我带来了一些麻烦,有人用RegEx清除这些值吗?

这是我得到的错误:

'', hexadecimal value 0x19, is an invalid character.

这篇文章完全解释了我的问题,但我正在寻找一个RegEx解决方案:http://seattlesoftware.wordpress.com/2008/09/11/hexadecimal-value-0-is-an-invalid-character/

RegEx从C#中的字符串中删除十六进制字符

您应该使用.NET提供的XML处理类,而不是通过串联来构建XML字符串。这些类将正确地将危险字符编码为XML实体,并生成格式良好的XML。

此外,正则表达式在XML处理方面做得不好。

我可以,但它也会出现任何死亡,牛肉,蜜蜂,be,b,dear中的dea,任何十进制数字,任何a,b,c,d,e

I oul, ut it woul lso ny ourn o , , , , , th in r, ny iml gt, ny , , , ,

看到了吗?

你需要像…这样的东西吗。。。。

    Regex regex = new Regex("0x''d''d");
    String Input = "this0x34is my 0x45 test 0x11";
    string Result = regex.Replace(Input, " ");

我知道你希望使用Regex,但你尝试过System.Security.SecurityElement.Escape吗?我相信这个方法是专门为您的用例设计的。