如何使用正则表达式替换特殊字符吗?
-
16-09-2019 - |
题
如何更换使用正则表达式的特殊字符? 通过特殊的,我的意思是,在文本中有时会出现这些符号字符。
例如,在下面的文字,我要删除的气泡是在每个行的开始。
护照详细
Name as on passport
Relationship
Passport Number
Date of Issue
Expiry Date
Place of Issue
问题编辑:对不起,在行的开始的气泡没有更多visible.After提交问题,计算器移除特殊字符
。任何人都知道如何更换这些特殊字符?我不想更换如#,@或!字符。这些是微不足道的,并且可以与键盘键入。
对不起,我不知道如何把我的question.I这些特殊字符会尽量解释。在word文件,我们把子弹文本之前。我想替换字符reprenting这样的字符。我有包含看起来像泡沫字符一些文本文件。
最后,我发现了解决方案。 这正则表达式为我的作品
([^(A-ZA-Z0-9)+ | \ r | \ n | \吨|'|“|#|; |:| / | \ | |,|])
解决方案
我没有足够的时间来充实一个完整的例子。但是,由于你使用.NET可以匹配任何数量的这些字符类的:
http://msdn.microsoft.com/en-us/library /20bw873z.aspx
选择您要接受并更换任何不等于设定的。
其他提示
(这是被指定的语言之前已经公布。)
要与在Perl的空间代替非ASCII字符,
$string =~ s/[^[:ascii:]]/ /g;
请参阅 http://codepad.org/KTMvQiOz 。这里的[^[:ascii:]]
是一个相匹配的任何非ASCII字符正则表达式。
这将有可能找到与此正则表达式的“特”字,然后只需用空格字符替换它们:
/[<special_characters_here>]/
然而,它通常是更好地使用白名单,从而提的所有允许的字符并取代一切,这不是他们一个空格字符:
/[^<allowed_characters_here>]/
你的意思是更换回车换行字符?
如果这就是你以后,这将做到这一点:
var source = "once\r\ntwice\r\nthrice";
var pattern = new Regex(@"\r\n");
var result = pattern.Replace(source, ",");
Assert.AreEqual("once,twice,thrice", result);
不隶属于 StackOverflow