《正则表达式》总结笔记

参考网站:编程胶囊 (codejiaonang.com)
数字相关[0-9]\d匹配0-9的数字
[^0-9]\D 匹配非数字
[0-9a-z]数字或字母
字母相关[a-z]所有小写字母[A-Z]所有大写字母\w所有字母
[^a-z]所有非小写字母[^A-Z]所有非大写字母\W所有非字母
[0-9a-z]数字或字母
特殊字符:\W 匹配±*\等
字符:\w所有字符 (数字字母下划线)
\s所有空白(空格,tab,换行)\S非空白
.任意字符(不能匹配换行符)
?匹配0次或1次
{n}或匹配n个大括号前面规定字符(\d,\w等都可以) \d{n} 相当于\d\d\d\d\d...n个\d
{n,m}匹配n~m个大括号前面规定字符
{n,m}?非贪婪模式,尽可能少地匹配字符,匹配n个大括号前面规定字符
{n,}匹配大于等于n个大括号前面规定字符
+相当于{1,}
*相当于{0,}
单词\b匹配单词边界 ,如\baaaa123\b
^w匹配w开头的字符串
^word 匹配以word开头的单词word$匹配以word结尾的单词
提取(当一串字符串内由不想要的字符或数据时使用)
**()只提取括号内的数据,不提取括号外的数据
或条件|:(.jpg|.jpeg|.gif|.png)
非捕获组: (?:) 捕获除括号内的数据
回溯应用 \1表示第一个分组捕获到的数据
断言不懂。
先行断言:(?=) ?<!
后行断言:(?<=) (?<!)
实例
匹配所有手机号码(以1开头,第二个数字是34578中的一个数字,后面九个是0-9中的数字)
^1[34578]\d{9}
匹配以http开头,以/结尾的数据
^http.*/$
提取学号2019-5013-08分成3组
(\d{4})[\-\s]?(\d{4})[\-\s]?(\d{2})

猜你喜欢

转载自blog.csdn.net/weixin_52013159/article/details/126975542