[c#.Net]正则表达式 记录
- @符号
c#字符串前使用@符号,“@”表示,跟在它后面的字符串是个“逐字字符串”。string x="D:\\My Huang\\My Doc";
string y = @"D:\My Huang\My Doc"; //等效 - 基本语法
\d 0-9数字 \D \d的补集,即所有非数字的字符 \w 单词字符,包括:大小写字符,0-9数字,下划线 \W \w的补集 \s 空白字符 \S \s的补集 . 除换行符\n外的所有字符 [...] 匹配[]内列出的所有字符 [^...] 匹配非[]内列出的所有字符 (...) 匹配组合,记录 (?:...) 匹配组合,非记录 - 定位
^ 字符串开始 $ 字符串结束 \b 匹配一个单词的边界 \B 匹配一个非单词边界 - 重复描述字符
{n} 匹配前面的字符n次 {n,} 匹配前面的字符大于等于n次 {n,m} 匹配前面的字符n到m次 ? 0到1次 + 1到多次 * 0到多次 - 组与非捕获组
正则表达式引擎会记忆"()"中匹配到的内容,作为一个组,并且可以通过索引的方式进行引用。表达式中的"\1",用于反向引用表达式中出现的第一个组string x = "Find somebody to love me, Find somebody to love";
Regex r = new Regex(@"^Find ([a-z]{8}) to ([a-z]{4}) me, Find \1 to \2$");
// r.Matches(x).Count --> 1
// Groups[0]是整个匹配的字符串,Groups[1]是组内的内容
// r.Matches(x).Groups[1].Value --> somebody Regex r2 = new Regex(@"^Find (?<group1>[a-z]{8}) to ([a-z]{4}) me, Find \1 to \2$");
// r2.Matches(x).Groups["group1"].Value string y = "Find somebody somebody";
regex r3 = new Regex(@"(?<g1>[a-z]+) \1");
if (r3.IsMatch(y))
{
y = r3.Replace(y, "${g1}");
} - 贪婪与非贪婪
在*,+符号后添加?,可以将匹配模式改成非贪婪 - 忽略大小写
Regex reg = new Regex(regPattern, RegexOptions.IgnoreCase);
[c#.Net]正则表达式 记录的更多相关文章
- swift 手机号码正则表达式 记录一下
func isTelNumber(num:NSString)->Bool { var mobile = "^1(3[0-9]|5[0-35-9]|8[025-9])\\d{8}$&qu ...
- python正则表达式记录
元字符: * 星号 它指定前一个字符可以被匹配零次或更多次 >>> re.match('a[bcd]*b', 'abcbdabcd').group() 'abcb' >& ...
- 关于在Eclipse中使用正则表达式替换的一点记录(使用正则表达式的分组)
今天在工作中遇到了点替换的麻烦事,由于数据类进行了变动,具体情况是这样的,需要将下面的代码: player.skillData[i].name 替换为: player.skillData.getSki ...
- MySQL之单表查询 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 使用正则表达式查询
MySQL之单表查询 阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER B ...
- linux正则表达式回忆记录
好久没用linux grep相关正则表达式,现在简单记录下. grep简介 grep 是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来.通常grep有三种版本grep.egr ...
- 【java 正则表达式】记录所有在java中使用正则表达式的情况
本篇记录在java中邂逅正则表达式的所有美丽瞬间.因为在java和js中正则表达式的语法并不一致. 1.匹配字符串中有出现[2.1开头或者&2.1或者&3.1等的] Pattern m ...
- 【js 正则表达式】记录所有在js中使用正则表达式的情况
说实话,对正则表达式有些许的畏惧感,之前的每次只要碰到需要正则表达式去匹配的情况,都会刻意的躲过或者直接从度娘处获取. 此时此刻,感觉到了某一个特定的点去触及她.但笔者对于正则表达式使用上的理解是这样 ...
- JS正则表达式,记录自己所学所用的内容
还没接触正则表达式感觉确实有那么点难度,但接触到后自己琢磨了几天也没发现那么难. 现在教教刚学的或者还没接触正则表达式的同学们入入门,一起学习. 正则表达式基本语法 ***************** ...
- JS正则表达式学习记录
JS:正则表达式学习记录 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
随机推荐
- POJ 2311 Cutting Game (Multi-Nim)
[题目链接] http://poj.org/problem?id=2311 [题目大意] 给出一张n*m的纸,每次可以在一张纸上面切一刀将其分为两半 谁先切出1*1的小纸片谁就赢了, [题解] 如果切 ...
- 【找规律】URAL - 2069 - Hard Rock
题解及证明:http://www.cnblogs.com/StupidBoy/p/5241258.html #include<cstdio> #include<algorithm&g ...
- 【后缀数组】poj3693 Maximum repetition substring
sa在清空方面存在一些奇怪的问题……难以ac.(留坑?)
- 【强连通分量缩点】【记忆化搜索】bzoj1589 [Usaco2008 Dec]Trick or Treat on the Farm 采集糖果
缩成DAG f(i)表示以i为起点的最长路 #include<cstdio> #include<cstring> #include<algorithm> #incl ...
- 【高斯消元】【异或方程组】【bitset】bzoj1923 [Sdoi2010]外星千足虫
Xor方程组解的个数判定: ——莫涛<高斯消元解Xor方程组> 使用方程个数判定:消去第i个未知数时,都会记录距第i个方程最近的第i位系数不为0の方程是谁,这个的max就是使用方程个数. ...
- 我是如何给discuz模板做语法高亮的/vs code/textmate
本人一直做ASP.NET开发,近期接到任务要用Discuz开发一个社区,第一次接触PHP,PHP灵活的语法,天生的模块化,各种语法糖深深的震惊了我,我从内心深处感受到了PHP是最牛逼的语言!!! 好了 ...
- vscode 使用笔记
https://code.visualstudio.com/docs/setup/setup-overview#_proxy-server-support 如果使用代理上网时,需要配置: 在 se ...
- python3读取html文件
# htmlf=open('E:\\test2.html','r',encoding="utf-8") # htmlcont=htmlf.read() # print(type(h ...
- git新建和删除远程分支
创建远程分支: 新建本地分支 git checkout -b branch_name 推送到远程分支,分支名字和本地分支名字相同 git push origin branch_name:branch_ ...
- Linux内核分析(三)内核启动过程分析——构造一个简单的Linux系统
一.系统的启动(各历史节点) 在最开始的时候,计算机的启动实际上依靠一段二进制码,可以这么理解,他并不是一个真正的计算机启动一道程序.计算机在开始加电的时候几乎是没有任何用处的,因为RAM芯片中包括的 ...