C#中正则表达式(Regex)过滤内容的基本使用方法
作者:生产队的驴. 发布时间:2023-11-26 12:51:00
先看英文意思
命名空间
using System.Text.RegularExpressions;
正则表达式是干什么用的?
简单来说就是 检索 数据
个人比较喜欢用来过滤一些文本的内容和网页
比如我有100w个文字想找到里面的几个数字用人工一个一个查找基本不可能
但是使用正则表达式就可以在马上找到
在编程里还是比较重要的
简单了解后开始教程
比如有一个记事本内容 要找出里面的5个数字 分别是 2 4 8 9 6
1.读取文本内容
上面说的打开 并不是把文件打开 而是将文件打开在 缓冲区 才可以进行读和写的操作 下面粗略画了个图更好理解
2.创建正则表达式
匹配规则是什么?
就是你需要的哪一些数据
比如我只需要数字 [\d]或者[0-9]
就是那么简单
下面是匹配规则(部分)
“ ^ ” 符号意思 :这个是一个排除的符号哦 如果不需要就在前面加一个这个符号即可 如 [^0-9] 不需要0-9的数字
大小写区别 :小写是需要 大写 是排除
[\d] :只需要0-9的数字
[\D] :不需要0-9的数字
[^\d] :除了数字其他内容都需要**
[\w]:只需要英文字母a-z A-Z 0-9 汉字
[\D]:不需要英文字母a-z A-Z 0-9 汉字
[a-c]:只需要a-c的单词 当然也是可以a-l 等等
[^a-c]:不需要a-c的单词 当然也是可以a-l 等等
[a|b]:只需要a或b
因为我只需要拿到里面的数字所以直接使用 [\d]
3.输出匹配好的内容
温馨提示:循环里如果不知道数据类型 可以用var 代替哦
var:不知道数据类型的情况下 使用 ,出的是string类型 那他就是 string类型 出来是int 就是int类型 非常好用
运行效果:
简单粗暴 只需要几行代码就把想要的内容拿下来了
以后处理一些数据还是很好用的 当然上面说的都是基础
补充:C#正则表达式筛选去掉不符合的字符
如下举例筛选str字符串中非十六进制字符,得到新的目标字符串strRet;
string str = "abcdsefghias12321312";//需要筛选的目标字符串
string pattern = "[A-Fa-f0-9]";//表示十六进制字符
string strRet = "";
MatchCollection results = Regex.Matches(str, pattern);
foreach (var v in results)
{
strRet += v.ToString();
}
来源:https://blog.csdn.net/dpc5201314/article/details/117577098


猜你喜欢
- 在项目中,有时候会用到领域枚举和DTO枚举的映射和转换。有一个现实的问题是:如果领域枚举项发生变化,而DTO枚举项没有及时更新,这样会造成映
- 前言Java泛型这个特性是从JDK 1.5才开始加入的,因此为了兼容之前的版本,Java泛型的实现采取了“伪泛型”的策略,即Java在语法上
- 操作流程假设你已经有自己的域名,因为微信公众号和微信回调都需要域名先看看官方给的文档根据官方文档,主要流程如下:(1)引导用户进入授权页面同
- Escape: public static string Escape(string str) { StringBuilder sb = n
- 简单介绍 多个线程可以通过调用ManualResetEvent对象的WaitOne方法进入等
- 这是一个可以从乱码文本中得到正确的原始文本的程序,其基于的原理在于错误的编码往往导致位补充,因此正确的文本使用的字节数应该是最少的(之一)。
- 本文实例为大家分享了Unity2D游戏回旋镖实现的具体代码,供大家参考,具体内容如下以下我举出2种同使用情况的回旋镖那么回旋镖需要怎么做呢?
- 本文实例讲述了C#图像处理之边缘检测(Sobel)的方法。分享给大家供大家参考。具体如下://定义sobel算子函数private stat
- 当我们需要制作动态炫酷科技感很强的UI时,美术一般会给我们提供一些序列图,这时候我们只需在程序里实现序列动画。一.动画机unity自带的帧动
- 之前也是在网上看到这种效果,不过是滚动listview来改变标题栏的颜色,感觉那个应用的比较少,比如我要滚动scrollview来实现呢,那
- 本文实例讲述了Android实现在屏幕上移动图片的方法。分享给大家供大家参考。具体实现方法如下:1. Speed.java文件:packag
- 概述从今天开始, 小白我将带大家开启 Jave 数据结构 & 算法的新篇章.算法的衡量标准当我们需要衡量一个算法的的优越性, 通常会
- 状态转移方程:d(i,j) = min(d(i,j),d(i,k)+d(k,j)),其中i<k<j思路对于每一个k(i<k
- 最近在开发的过程当中,对于已有的代码,想将相关类绘制成UML类图,虽然现在有很多UML类图的优秀软件,比如ProcessOn(可视化编辑)、
- 本文实例讲述了Java swing框架实现的贪吃蛇游戏。分享给大家供大家参考,具体如下:java是门高级语言,做游戏时适合做后台,但是用它也
- 本文实例为大家分享了Android实现比赛时间闪动效果的具体代码,供大家参考,具体内容如下效果代码上代码public class Twink
- 通过微软的SAPI,不仅仅可以实现语音合成TTS,同样可以实现语音识别SR。下面我们就介绍并贴出相关代码。主要有两种方式:1、使用COM组件
- 前言对于初学者们来说,刚开始编写Java代码时,会遇到很多困难,下面来说一个比较常见的错误,如下:初学者一般都是从Hello,World开始
- 最近由于项目开发使用到了动态布局,因为打包sdk ,sdk 这块activity 需要一些layout 文件 。而做过sdk 开发的小伙伴应
- 本文介绍了Android ItemDecoration 实现分组索引列表的示例代码,分享给大家。具体如下:先来看看效果:我们要实现的效果主要