C# 使用正则表达式

正则表达式概念

称规则表达式(Regular Expression,通常缩写为 Regex),是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"),是计算机科学的一个概念。正则表达式使用特定的语法以字符串的形式来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。

。。。。。。。。

正则表达式创建规则

创建正则表达式就是用多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。(不要紧张,巴拉巴拉~规则太多了😳,我学了这么久还是不太清楚规则,还是给兄弟们直接来点实例和列出一些常用正则表达式😁)

正则表达式实例

检索字符
cs 复制代码
Regex reg = new Regex("[0-9]*");//搜索匹配0-9的数字
Console.WriteLine(reg.Match("abc123def"));//最后输出123

是不是很简单,而且省去了程序去检索字符串的繁琐事情,大大加快了工作效率。

使用正则表达式Regex.Split分割字符串
cs 复制代码
using System.Text.RegularExpressions;
string str="aabdccee";
string[] sArray=Regex.Split(str,"bd",RegexOptions.IgnoreCase);//aaccee
cs 复制代码
string str = "aaa(12)bbb[34]ccc{56}ddd";
//提取小括号()内值:12
string str1 = Regex.Replace(str, @"(.*\()(.*)(\).*)", "$2");

//提取中括号[]内值:34  
Regex rgx = new Regex(@"(?i)(?<=\[)(.*)(?=\])");
string str2 = rgx.Match(str).Value;

//提取大括号{}内值:56
string str3 = Regex.Match(str, @"\{(.*)\}", RegexOptions.Singleline).Groups[1].Value;
常用的正则表达式
cs 复制代码
检索数字:[0-9]
检索英文字母:[a-zA-Z]
检索数字和字母:^[A-Za-z0-9]+$
n位的数字:^\d{n}$
汉字:^[\u4e00-\u9fa5]{0,}$
手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
短身份证号码(数字、字母x结尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
日期格式:^\d{4}-\d{1,2}-\d{1,2}

参考:

【C#基础】C# 正则表达式-CSDN博客

最全常用正则表达式大全-CSDN博客

相关推荐
饼干哥哥10 小时前
Seedance TK视频「真人感」问题的 9 个解法
正则表达式·代码规范·设计
逝水无殇1 天前
C# 正则表达式详解
开发语言·后端·正则表达式·c#
木木子226 天前
# 密码强度检测深度解析:正则表达式实时分析、多维度评分算法与可视化反馈
mysql·算法·华为·正则表达式·harmonyos
饼干哥哥6 天前
用Claude Code跑通跨境电商的5大场景,顶10个人的团队
人工智能·设计模式·正则表达式
饼干哥哥7 天前
单篇100万阅读文章,如何用AI 做好内容创作?
人工智能·正则表达式·代码规范
无足鸟ICT8 天前
【RHCA+】扩展正则表达式
linux·正则表达式
无足鸟ICT10 天前
【RHCA+】正则表达式
linux·正则表达式
Full Stack Developme11 天前
正则表达式的使用教程
java·数据库·正则表达式
Full Stack Developme11 天前
正则表达式设计及工作原理
数据库·mysql·正则表达式
踏着七彩祥云的小丑1 个月前
Go学习第9天:并发编程 + 文件操作 + 正则表达式
学习·golang·正则表达式·go