C#中如何使用正则表达式
【草稿版本,谨慎阅读】
参考文档:正则表达式30分钟入门教程
如需系统学习正则表达式内容,请移步上述教程。
正则表达式按照指定的规则来匹配字符或字符串。'.' ' \b' ' \d'等等被称为是正则表达式中的元字符,比如说点元字符用来匹配换行符以外的其他任意字符,\b元字符用来匹配单词,\s元字符用来匹配空格等等。
正则表达式转换:
Show you the code:(\S)
string input = "I is Lily.";
string pattern = @"\s+";
string replacement = " ";
string result = Regex.Replace(input, pattern, replacement); Console.WriteLine("Original String: {0}", input);
Console.WriteLine("Replacement String: {0}", result);
\s用来匹配空格,而\s+则是用来匹配一个或多个和空格,如代码所示,将一个或多个空格,替换成一个空格,运行效果如图:
Show you the code:(\b)
string input = "I is Lily.";
string pattern = @"\bis\b";
string replacement = "am";
string result = Regex.Replace(input, pattern, replacement);
Console.WriteLine("Original String: {0}", input);
Console.WriteLine("Replacement String: {0}", result);
\b用来匹配单词,则\bis\b用来匹配单词is,并将is替换成am,运行效果如图:
Show you the code:(.*)
input = "Sis a girlD";
pattern = @"is\b.*\bgirl";
replacement = "*";
result = Regex.Replace(input, pattern, replacement);
Console.WriteLine("Original String: {0}", input);
Console.WriteLine("Replacement String: {0}", result);
.*用来匹配任意数量的非换行字符,则pattern匹配以is开头girl结尾,且is后面和girl前面必须紧邻空格的字符串,运行效果如图:
验证正则表达式是否匹配:
Show you the code:(\d)
string phone = "";
string pattern = @"1\d{10}";
bool result = false;
Console.WriteLine("请输入你的手机号码");
do
{
phone = Console.ReadLine();
result = Regex.IsMatch(phone, pattern);
if (!result)
Console.WriteLine("BadNum,try again");
} while (!result);
Console.WriteLine("Good");
\d用来匹配一位数字,则d{10}用来匹配10位数字,运行效果如下:
持续更新中...
常见正则表达式元字符:
1:\w 匹配任意的字母,数字或者下划线,则\w+匹配一位或多位字符、数字等。
C#中如何使用正则表达式的更多相关文章
- ORACLE中的支持正则表达式的函数
ORACLE中的支持正则表达式的函数主要有下面四个:1,REGEXP_LIKE :与LIKE的功能相似2,REGEXP_INSTR :与INSTR的功能相似3,REGEXP_SUBSTR :与SUBS ...
- js中几个正则表达式相关函数使用时g标志的作用
首先,javascript中涉及到正则表达式的函数总共有6个,可分为两种: 1.第一种是作为字符串对象的方法,即以 String.fun(); 形式调用,这里包括 split.search.match ...
- C#中Spli、正则表达式分解字符串详解
一.String.Split方法提供了如下6个重载函数: 名称 说明 String.Split (Char[]) 返回包含此实例中的子字符串(由指定 Char 数组的元素分隔)的 String 数组. ...
- php中常用的正则表达式函数
php中常用的正则表达式函数 * preg_match() * preg_match_all() * preg_replace() * preg_filter() * preg_grep() * pr ...
- C#中,使用正则表达式匹配获取所需数据
.NET中,使用正则表达式匹配获取所需数据 需求:获取一串字符串中,正则匹配出需要的数据. 例如以下字符串: string temp ="ErrorCode:-1,Message:{&quo ...
- * 和 ?在 shell 命令行中与在正则表达式中的区别
Linux 正则表达式 你有没有想过,在 shell 命令行中的 *,?和正则表达式中的*,?是否一样? 自打好多年前接触 DOS,就知道了* 和?这两个通配符(Wildcard),象 dir *.* ...
- PHP中的常用正则表达式集锦
PHP中的常用正则表达式集锦: 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^\x00-\xf ...
- Visual Studio 中使用的正则表达式 说明
Visual Studio 中使用的正则表达式 说明 2013-10-11 21:10:12| 分类: VB和VBA知识|举报|字号 订阅 参考:详解Visual Studio正则替换大 ...
- Snort中pcre和正则表达式的使用
Snort中pcre和正则表达式的使用 1. 题目描述 If snort see two packets in a TCP flow with first packet has "login ...
- JMeter中的关联-正则表达式提取(2)
JMeter获取正则表达式中的提取的所有关联值的解决方法: 需求如下: { : ", : "results": : [ : : { : : : "total_e ...
随机推荐
- 题解报告:poj 1738 An old Stone Game(区间dp)
Description There is an old stone game.At the beginning of the game the player picks n(1<=n<=5 ...
- 1. Visio Web 形状 - 无法与 Web 服务器建立连接。请稍后重新进行搜索。处理方式
今天在Visio中使用“搜索形状”,发现不管搜什么,结果都是:Visio Web 形状 - 无法与 Web 服务器建立连接.请稍后重新进行搜索 具体解决方案如下:控制面板=>添加或删除程序=&g ...
- 进程间通信的两种实现方式(IPC)
进程间通信的两种实现方式(IPC) IPC: iter processing communicate 进程间通信:IPC(iter process communicate)linux free-m 可 ...
- 伟景行 citymaker 从入门到精通(3)——点击地图获取坐标,点击模型获取模型信息和属性信息
在地图上点击要素查看要素信息,也就是identify功能 script部分 // 通过枚举索引获取枚举名称 function getEnumTextByIdx(enumObj, idx) { for ...
- 教你如何配置WampServer
httpdconfig 搜索deny 268行 Deny 换成Allow 在本机cmd 搜索 ipconfig 找到 本机的ip 地址 239 行 DocumentRoot "e:/mywe ...
- JVM补充一
一.为什么废弃永久代(PermGen) 2.1 官方说明 参照JEP122:http://openjdk.java.net/jeps/122,原文截取: Motivation This is part ...
- Es6里面的解析结构
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...
- 洛谷 P1030 求先序排列
题目描述 给出一棵二叉树的中序与后序排列.求出它的先序排列.(约定树结点用不同的大写字母表示,长度<=8). 输入输出格式 输入格式: 2行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序 ...
- codevs 1219 骑士游历 1997年
时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象 ...
- light oj 1336 sigma function
常用的化简方法(高中就常用了): p^(e+1)-1/p-1= [ p^(e+1) -p + (p-1) ]/ (p-1) = p*(p^e-1)/(p-1) + 1 ...