正则表达式【C#】

1作用:

1文本匹配(验证字符串)

2查找字符串

2符号:

. ^ $ * + - ? ( ) [ ] { } \ |

0-9\]+ 匹配出数字 #### 3语法格式: **/****表示模式****/****修饰符** **/****\[0-9\]+****/****g** ```cs 表示模式:是指匹配条件,要写在2个斜杠内。是正则表达式主体部分。 [0-9a-z]+ [XxYyZzAaBbCc]+ 单字符匹配 +加号是可多次匹配 / / 两个斜杠是包围正则表达式的模式,将其限制在两个斜杠之间。 修饰符: 辅助条件,收索模式。比如 忽略大小写i, 全局匹配g, 多行匹配m, 单行匹配s, Unicode匹配u, /[\u4e00-\u9fa5]+/u 匹配汉字 沾驸匹配y, /abc/y 字符串的开头"abc"才匹配 忽略空白x, /a b c/x 匹配"a b c" gims可以组合使用。 可以: 查找,替换,验证,提取文本数据。 ``` ![](https://file.jishuzhan.net/article/1731248736660623362/e68d44a122011fa0618c64f22155fa7b.webp) **/****\[0-9\]+****/****g**是查找整行**匹配**数字 ![](https://file.jishuzhan.net/article/1731248736660623362/39295cc64553f32525b49827c651ae6d.webp) **/****\[0-9\]****/****g**是查找整行单个**匹配**数字 ![](https://file.jishuzhan.net/article/1731248736660623362/6b4435c8187e5d8334b7e21d2219adc3.webp) **/****\[d-e\]+****/****g**是查找整行匹配字母 ![](https://file.jishuzhan.net/article/1731248736660623362/ae9c59a3d501723821cfe9cdf2984ed5.webp) #### 4符号作用: ```cs * 最高通配符,前一个字符出现0次或多次匹配 . 通配单个字符(不包括\n \r) 等效于 [^\n\r] .. 通配2个字符 ... 通配3个字符 ^ 匹配字符串开头位置 $ 匹配字符串结尾位置 + 前一个字符1次或多次匹配 ? 前一个字符0次或1次 ab?c 指b出现0次和1次。 匹配"ac""abc" 不匹配"abbc" {n} 匹配前一个字符刚好出现n次 {n,} 匹配前一个字符至少出现n次 {n,m} 匹配前一个字符至少出现n次,但不超过m次 \d{2,4}例: 12abc 2345abcd 567ppp \d 任何数字 {2,4}至少连续出现2~4次 - ( ) 字符串匹配,括号可以不写 (\d{4})-(\d{2})-(\d{2}) 例 2023-11-29 [ ] 集合内单字符匹配 ^反条件 去匹配集合内的任一单字符,有这元素就true { } 子条件 \ 转义 \. 匹配.点符号 a\.c 只匹配 a.c 不匹配abc \* 匹配*星符号 a\*b 例 abc adc acc \d 匹配数字 {4}匹配4个数字 2023年 {3,16}长度3~16的数字 \w 匹配字符 \s 匹配空白字符 \b 匹配单词的边界,回车 \B 不匹配字符边界 | 或者 cat|dog 猫和狗都满足条件 匹配cat和dog ``` #### 元字符: 相当于C语言的关键字。 ![](https://file.jishuzhan.net/article/1731248736660623362/9df171653358c4fd7ecd4aa7e1fd41fe.webp) ![](https://file.jishuzhan.net/article/1731248736660623362/528d6344d371e5e319c8f168c6b26ff4.webp) ```cs \b 是单词边界 \w 匹配字母、数字、下划线。等价于'[A-Za-z0-9_]'。 \. 匹配小数点 ``` #### 5提取数控坐标: CNC数控机床坐标 / \[Xx\]\\d+\\.?\\d+ /g ![](https://file.jishuzhan.net/article/1731248736660623362/14b1efa320caf0b7214832897e5bc4ea.webp) #### 6匹配和提取: [C#【中级篇】 C# 正则表达式_明如正午的博客-CSDN博客](https://star-302.blog.csdn.net/article/details/125202855 "C#【中级篇】 C# 正则表达式_明如正午的博客-CSDN博客") **C#的案例** ````cs 以下是一个使用C#的正则表达式的示例代码,它可以匹配一个字符串中的所有数字并输出: ```csharp using System; using System.Text.RegularExpressions; class Program { static void Main() { string input = "abc123def456ghi789"; string pattern = @"\d+"; // 匹配一个或多个数字 MatchCollection matches = Regex.Matches(input, pattern); foreach (Match match in matches) { Console.WriteLine(match.Value); } } } ``` 输出结果为: ``` 123 456 789 ``` foreach (Match match in Regex.Matches(input, pattern)) Console.WriteLine(match.Value); ```` ```cs var str = "abc123def"; var sub = /[0-9]+/; string data = str.match(sub); ``` **Regex** **regex** = new Regex(@"\^abc$"); string input = "abc"; bool status = regex.IsMatch(input); // 匹配结果 bool **Match** **match** = **regex**.Match(input); // 匹配对象 obj if(status) // match.Success { string str = **match**.Groups\[1\].Value; // 输出匹配 }

相关推荐
天空之城夢主2 天前
shell 编程之正则表达式与文本处理器
数据库·mysql·正则表达式
ASDyushui3 天前
Shell 编程之正则表达式与文本处理器
linux·正则表达式
Amo Xiang3 天前
《100天精通Python——基础篇 2025 第18天:正则表达式入门实战,解锁字符串处理的魔法力量》
python·正则表达式·re
2301_803297754 天前
Shell编程值正则表达式和文本处理器
数据库·mysql·正则表达式
睡觉z4 天前
Shell编程之正则表达式与文本处理器
数据库·mysql·正则表达式
北漂老男孩4 天前
正则表达式实战指南:原理、口诀与高频场景案例
正则表达式
小盐巴小严4 天前
正则表达式
javascript·正则表达式
AA-代码批发V哥4 天前
正则表达式: 从基础到进阶的语法指南
java·开发语言·javascript·python·正则表达式
蓝莓味柯基5 天前
Python3正则表达式:字符串魔法师的指南[特殊字符]‍♂️
开发语言·python·正则表达式
婷儿z6 天前
Shell编程之正则表达式与文本处理器
正则表达式