本文记录了C#中如何运用正则表达式,实现一次性替换多个字符或字符串。刚开始是使用Replace方法,但是如果替换的字符太多,代码就会变的冗余和不优雅,所以最好的方法就是使用正则,利用正则表达式匹配所有要替换的符号或者字符串,然后替换掉。
假设当前有一个单引号,双引号和尖括号(‘“< )的字符串,我们要将这些符号替换成空白从而去除掉(也就是将指定的字符一次就替换掉)。下面直接看代码,代码在控制台应用程序Main方法中运行:
//匹配所有要替换掉的字符和符号的正则表达式
string strPattern = "\"|\'|‘|’|“|”|<|>";
string strInput = "\"删\"\'除\'‘字’“符”<串>中所有的特殊符号";
//输出带有各种字符符号的字符串
Console.WriteLine(strInput);
Console.WriteLine("-------------------------------------------");
strInput = System.Text.RegularExpressions.Regex.Replace(strInput, strPattern, string.Empty);
//输出替换指定字符符号的字符串
Console.WriteLine(strInput);
Console.ReadKey();
最终输出结果如下:
我们可以看到,在C#中使用Regex.Replace(String, String, String)方法就可以高效便捷的替换掉字符串中的多个符号, 代码中是将特殊的符号替换成空白字符串,根据需要可以自己更改要替换的字符。
PS:
Regex.Replace 方法 (String, String, String)语法
public static string Replace(
string input,
string pattern,
string replacement
)
参数说明
input,类型:System.String,要搜索匹配项的字符串。
pattern,类型:System.String,要匹配的正则表达式模式。
replacement类型:System.String,替换字符串。
具体可以看下MSDN文档:https://msdn.microsoft.com/zh-cn/library/e7f5w83z(v=vs.110).aspx
作者:十有三
出处:https://shiyousan.com/post/635635048466912511
版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。