新闻中心
C#怎么进行正则表达式匹配 C# Regex类的使用方法
C#中正则匹配依赖System.Text.RegularExpressions.Regex类,常用方法包括IsMatch判断匹配、Match/Matches提取结果、Replace替换、Split分割,支持选项设置与常见格式验证。

在C#中进行正则表达式匹配主要依靠 System.Text.RegularExpressions.Regex 类。这个类提供了丰富的静态和实例方法,可以用来验证、查找、替换和分割字符串。下面介绍常用用法和典型场景。
1. 引入命名空间
使用正则前,确保引入命名空间:using System.Text.RegularExpressions;
2. 基本匹配:判断是否匹配
使用 Regex.IsMatch 方法判断一个字符串是否符合某个正则模式。
// 检查是否为手机号 string pattern = @"^1[3-9]\d{9}$"; bool result = Regex.IsMatch("13812345678", pattern); Console.WriteLine(result); // 输出 True
3. 提取匹配内容:获取匹配结果
使用 Regex.Match 获取第一个匹配项,或用 Regex.Matches 获取所有匹配。
string text = "我的电话是13812345678,备用号是15987654321";
string pattern = @"1[3-9]\d{9}";
Match match = Regex.Match(text, pattern);
while (match.Success)
{
Console.WriteLine(match.Value); // 输出:13812345678 和 15987654321
match = match.NextMatch();
}
4. 替换字符串
使用 Regex.Replace 将匹配的内容替换为指定字符串。
string text = "用户名:admin,邮箱:admin@example.com"; string sensitivePattern = @"\b\w+@[\w.]+\b"; string result = Regex.Replace(text, sensitivePattern, "[已隐藏]"); Console.WriteLine(result); // 输出:用户名:admin,邮箱:[已隐藏]
5. 分割字符串
使用 Regex.Split 按正则规则拆分字符串。
GoEnhance
全能AI视频制作平台:通过GoEnhance AI让视频创作变得比以往任何时候都更简单。
347
查看详情
string input = "apple, banana; orange | grape";
string[] parts = Regex.Split(input, @"[,;|\s]+");
foreach (string part in parts)
{
if (!string.IsNullOrWhiteSpace(part))
Console.WriteLine(part);
}
// 输出:apple, banana, orange, grape
6. 使用选项(如忽略大小写)
通过 RegexOptions 枚举设置匹配选项。
string text = "Hello World HELLO C#"; string pattern = @"hello"; MatchCollection matches = Regex.Matches(text, pattern, RegexOptions.IgnoreCase); Console.WriteLine(matches.Count); // 输出 2
7. 验证输入格式的常见例子
-
邮箱验证:
@"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$" -
身份证号:
@"^\d{17}[\dXx]$" -
URL:
@"^https?://.+$"
实际开发中建议根据业务需求调整正则复杂度,避免过度匹配或性能问题。
基本上就这些。掌握 IsMatch、Match、Matches、Replace 和 Split 这几个核心方法,配合合适的正则表达式,就能解决大多数文本处理问题。
以上就是C#怎么进行正则表达式匹配 C# Regex类的使用方法的详细内容,更多请关注其它相关文章!
# 中文网
# 政府网站建设讨论交流
# 衢州关键词排名公司
# 营销推广原则
# 铜陵网站推广企业名单
# 关键词排名加拉nj1343溦信
# 西湖区网站品牌推广平台
# 海底捞网站建设规划
# 武清区推广网站搭建中心
# 校园网站建设总部
# 网站建设记在哪个科目
# 解决问题
# 正则表达式
# 相关文章
# 就能
# 第一个
# 什么用
# 高性能
# 之道
# 数据结构
# 邮箱
# apple
# app
# c#
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
c++如何实现单例设计模式_c++线程安全的单例模式写法
纯CSS与HTML网格布局的HTML精简策略:SVG与JS方案解析
J*aScript中高效清空DOM列表元素:解决for循环中断与任务管理问题
MAC怎么让Dock栏只显示当前运行的应用_MAC终端命令实现极简Dock栏
如何创建独立于主系统的J*a运行环境_隔离式环境搭建策略
Spring Boot内嵌服务器与J*a EE全栈特性:选择与部署策略
Lar*el的路由模型绑定怎么用_Lar*el Route Model Binding简化控制器逻辑
海棠电脑版入口_通过电脑访问海棠官网阅读
C++如何实现单例模式_C++设计模式之线程安全的单例写法
C++ string find函数返回值npos详解_C++字符串查找失败的判断条件
QQ邮箱登录首页官网地址2026 QQ邮箱官方网页入口
React Router v6 教程:构建认证保护的私有路由与重定向策略
漫画星球免费下拉式入口 漫画星球免费漫画在线阅读网站
CKEditor 5 自定义构建在React应用中渲染失败的调试与解决
没有大陆身份证/银行卡如何实名微信? 亲测有效的几种方法分享
汽水音乐网页版使用入口_汽水音乐电脑版播放指南
Tabulator表格日期时间排序问题及自定义解决方案
J*aScript数据结构转换:将对象数组按类别分组
Win11 USB传输速度慢怎么解决 Win11 USB驱动更新与设置
京东单号查询入口_京东快递订单追踪入口
sublime如何处理大型CSV文件的列对齐_sublime高级表格编辑插件指南
Promise错误处理:在catch后终止链式then执行的策略
Go语言中Map存储的结构体如何调用指针方法:深入解析与实践
AO3最新可访问网址 Archive of Our Own官方在线入口
excel如何生成目录 excel一键生成工作表目录超链接
AO3访问入口汇总 AO3网页版同人作品一键直达
解决J*aScript中重复选择项的确认对话框显示问题
yy漫画网页版官方入口_yy漫画官网登录页面链接
“音游” × “怪文书” 题材的节奏冒险游戏 《晕晕电波症候群》确定于2026年4月发售!
解决Flask中Quill编辑器内容提交失败及TypeError的指南
漫蛙2漫画入口 漫蛙正版网页漫画直达网址
126邮箱账号注册 电脑版登录入口
Python大型XML文件高效流式解析教程
b站怎么删除评论_b站评论管理与删除操作
J*a如何使用AtomicInteger控制计数_J*a无锁计数器性能分析
腾讯视频怎么使用多账号家庭管理_腾讯视频家庭多账号统一管理与权限分配教程
蛙漫2台版漫画地址 Manwa2正版网页版链接
c++如何使用Meson构建系统_c++比CMake更快的构建工具
QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口
SteamMachine定价或为699美元 大家想入手吗?
C++ vector二维数组定义_C++ vector of vector用法
React/Next.js中实现列表项的动态移动与状态管理:兼论唯一键的重要性
LINUX的perf命令入门_LINUX官方性能分析工具的使用与解读
Windows10怎么开启夜间模式 Windows10系统设置调整色温与亮度缓解夜间用眼疲劳【教程】
如何将HTML表格多行数据保存到Google Sheets
sublime如何配置Python开发环境_将sublime打造成轻量级Python IDE
虫虫漫画精品漫画官网_虫虫漫画精品漫画官网进入精品漫画
谷歌浏览器怎么给标签页静音_Chrome标签静音快捷操作
处理Kafka消费者会话超时:深入理解消息处理语义与幂等性
消息称三星明年 2 月正式发布 HBM4,与 SK 海力士同台竞技


2025-12-02
浏览次数:次
返回列表
rn = @"^1[3-9]\d{9}$";
bool result = Regex.IsMatch("13812345678", pattern);
Console.WriteLine(result); // 输出 True