C# 正则表达式

Posted 小马哥棺材板

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 正则表达式相关的知识,希望对你有一定的参考价值。

之前也写过一篇 比较简单
正则表达式

今天主要介绍下他的 静态方法 以及一些常用的 符号

符号作用
^匹配开头或不需要的文字
$匹配结尾
*0个或者多个 (不包含也是True)
.除换行符以外的任意字符
w匹配字符 数字 下划线 汉字
W不匹配字符 数字 下划线 汉字
s匹配 空白字符 包括\\n \\r \\t \\v \\f
S不匹配 空白字符 包括\\n \\r \\t \\v \\f
d匹配数字 0-9
D不匹配数字 0-9

^定位开头:
^表示定位匹配开头的字符

  string str = "小红在吃饭";
  str =Regex.Replace(str,"^","一天");
Console.WriteLine(str);

第一个参数是你需要匹配的字符串,2是元字符 3是替换的内容
返回的也是一个字符串类型
运行结果:

一天小红在吃饭

&定位结尾:
&表示定位匹配结尾的字符

 string str = "小红在吃饭";
 str =Regex.Replace(str,"$","很好吃");
 Console.WriteLine(str);

运行结果:

小红在吃饭很好吃


[ ]的语法:
如果在规则中加入[ ]意思就完全不一样了

string str = "ABCDEFG";//需要匹配的字符
     string s = "[ABC]";//规则
     str=  Regex.Replace(str,s,"*");//匹配并且赋值
        Console.WriteLine(str);//输出

运行结果是:

***DEFG

其意思就是只匹配括号里的字符

如果变成:

[^ABC]

那就是除了ABC替换所有的字符为* 包括空格

其他语法:

[^123]:除了123的数字
[123]:只需要123的数字
[0-5]:只需要0-5的数字
[a-b]:只需要a到b之间的小写字母
[a|b]:只匹配a或者b
[^d]:不匹配0-9的的数字

以上是关于C# 正则表达式的主要内容,如果未能解决你的问题,请参考以下文章

●c#使用正则表达式

包含正则表达式分隔符的简单且经过测试的在线正则表达式在 C# 代码中不起作用

包含正则表达式分隔符的简单且经过测试的在线正则表达式在 C# 代码中不起作用

C# 正则表达式拆分为 Java 模式拆分

C#代码实现邮箱验证C#中及一些常用的正则表达式

需要一些带有(正则表达式)的 C# 代码,这将改变 url 域