正则表达式【C#】

1作用:

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

2查找字符串

2符号:

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

[0-9]+        匹配出数字

3语法格式:

  / 表示模式 / 修饰符

  /[0-9]+/g

表示模式:是指匹配条件,要写在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可以组合使用。可以: 查找,替换,验证,提取文本数据。

/[0-9]+/        是查找整行匹配数字

 

/[0-9]/g          是查找整行单个匹配数字

/[d-e]+/        是查找整行匹配字母

4符号作用:

.   通配单个字符(不包括\n \r)    等效于 [^\n\r]
..  通配2个字符
... 通配3个字符^    匹配字符串开头位置
$    匹配字符串结尾位置*    前一个字符出现0次或多次匹配
+    前一个字符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

5提取数控坐标:

CNC数控机床坐标

/ [Xx]\d+\.?\d+ /g

6匹配和提取:

C#【中级篇】 C# 正则表达式_明如正午的博客-CSDN博客

C#的案例

以下是一个使用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);
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;  // 输出匹配

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/183999.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++高阶(六)】哈希的应用--位图布隆过滤器

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C从入门到精通⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习C   🔝🔝 哈希的应用 1. 前言2. 位图的概念以及定义3. 位…

使用 Docker 安装和配置 MySQL 数据库简介

目录 一、使用镜像安装 1、查询镜像 2、拉取镜像 3、查看本地镜像 4、启动docker镜像 二、使用Docker Compose安装 1、安装Docker和Docker Compose 2、创建Docker Compose文件: 3、启动MySQL容器 4、验证MySQL容器是否正常运行 5、连接到MySQL容器 6、停止…

java Stream流操作

什么是Stream? java8新增Stream,配合同版出现的Lambda,为集合(Collection)操作提供了极大的便利。 Stream将要处理的元素集合看作一种流,在流的过程中,借助Stream API对流中的元素进行操作&am…

004:Direct 2D离屏渲染(Qt中实现)

简介: 用QT开发图像显示的小程序,需要一些标注工具,由于用的是opengl渲染,所以就在内存中进行绘制,然后纹理贴图贴出去,发现Qt绘制的效果太差,且速度一般,于是就想着用direct2d来绘制…

python——第十五天

面向对象和面向对象编程 面向对象编程: C语言是一门面向过程的编程语言!!! 面向对象的编程思想 就是分门别类的一种能力 面向对象的概念 类: 对一类事物的统称 对象: 一类事物中的具体案例 面向对象的…

python之pyqt专栏8-信号与槽4

信号重载 在上一篇python之pyqt专栏7-信号与槽3-CSDN博客,我们知道在自定义信号时,可以设定信号参数数据类型。pyqt还支持信号重载。 信号定义 sendText pyqtSignal([int],[str]) 代码意思是定义重载信号sendText,槽函数的参数可以是int数…

【Vulnhub 靶场】【CEREAL: 1】【困难】【20210529】

1、环境介绍 靶场介绍:https://www.vulnhub.com/entry/cereal-1,703/ 靶场下载:https://download.vulnhub.com/cereal/Cereal.ova 靶场难度:困难 发布日期:2021年5月29日 文件大小:1.1 GB 靶场作者:Thomas…

postman打开白屏

现状:postman打开白屏如下图 window环境变量: Win R 快捷键打开 sysdm.cpl 增加环境变量: 变量名:POSTMAN_DISABLE_GPU 值:true 重新打开postman

不用第三方软件实现停止windows10/11更新

第一步:打开regedit 1:键盘按下winR输入regedit 2:按下图顺序选择 3:右击settings新建DWORD【32位】值 输入FlightSettingsMaxPauseDays 然后右击修改值选择十进制输入4000代表可以延迟4000天就是10年多 然后打开设置 一直…

网络运维与网络安全 学习笔记2023.11.29

网络运维与网络安全 学习笔记 第三十天 今日更新太晚啦!!! 主要是今天工作时挨了一天骂,服了,下次记得骂的轻一点!!! (要不是为了那点微薄的薪资,谁愿意听你…

文件fd【Linux系统编程】

本文是基础IO的第一个部分,基础IO部分将主要讲解以下内容:文件fd 文件系统 软硬链接 操作系统的内存管理 以及 动静态库。本节重点讲解文件fd,其余内容将在后面的博客更新。 一、共识 文件 内容 属性 文件分为打开了的文件和没打开的文件。…

第二证券:股票几点到几点开盘?

作为股民或许投资者,我们都知道股票是每天都有开盘和收盘时间的。但是,关于股票的开盘时间,很多人并不是很清楚,特别是初学者。在本文中,我们将从多个视点分析股票开盘时间,并为大家供给一些有用的信息。 …

血的教训--kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】

血的教训–kail系统免密centos7的坑【高版本ssh免密低版本ssh的坑】 最近下载了一个2023版本的kail系统,但是经过几次设置免密后,ssh过去一直让提供密码,所以就仔细的分析了一下,果然还是发现了点猫腻 接上一个博客,大…

CSS新手入门笔记整理:CSS边框样式

边框宽度:boder-width 语法 boder-width:像素值; 边框样式:boder-style 语法 boder-style:取值; 属性值 说明 none 无样式 dashed 虚线 solid 实线 边框颜色:boder-color 语法 boder-color:色值&#xf…

Mysql之子查询(知识点+例题)

Mysql之子查询<知识点例题> 什么是子查询案例分析案例分析子查询的分类单行子查询子查询中的空值问题题目练习题目一题目二题目三题目四题目五补充&#xff1a;聚合函数与GROUP BY的使用关系 CASE表达式&#xff08;子查询中的运用&#xff09;简单CASE表达式搜索CASE表达…

电脑突然死机怎么办?教你几招快速拯救

当今社会&#xff0c;电脑成为我们日常生活和工作不可或缺的一部分。然而&#xff0c;有时电脑可能会突然死机&#xff0c;给我们的操作和数据带来不便。那电脑突然死机怎么办呢&#xff1f;本文将介绍解决电脑突然死机的三种方法&#xff0c;通过详细的步骤指南&#xff0c;帮…

类 —— 继承、多重继承

继承 一个类&#xff0c;继承另一个已有的类。&#xff08;在一个已存在的类的基础上建立一个新的类&#xff0c;并拥有其特性&#xff09; 是一个父类&#xff08;基类&#xff09;派生出子类&#xff08;派生类&#xff09;的过程。 派生类往往是基类的具象化&#xff0c;基…

接口测试之测试原则、测试用例、测试流程......

一、接口的介绍 软件测试中&#xff0c;常说的接口有两种&#xff1a;图形用户接口&#xff08;GUI&#xff0c;人与程序的接口&#xff09;、应用程序编程接口&#xff08;API&#xff09;。 接口&#xff08;API&#xff09;是系统与系统之间&#xff0c;模块与模块之间或者…

异常数据检测 | Python实现oneclassSVM模型异常数据检测

支持向量机(SVM)的异常检测 SVM通常应用于监督式学习,但OneClassSVM[8]算法可用于将异常检测这样的无监督式学习,它学习一个用于异常检测的决策函数其主要功能将新数据分类为与训练集相似的正常值或不相似的异常值。 OneClassSVM OneClassSVM的思想来源于这篇论文[9],SVM使用…

unity UGUI中获取点击位置处的URL链接

需求是&#xff0c;我们在一个text组件中像写网页那样写入链接&#xff0c;然后点击这个链接&#xff0c;就能访问配置的网页啥的。比如&#xff1a; <a href"hello">链接文本</a></summary> 最终的效果如下&#xff1a; 图中&#xff0c;image区…