基本正则表达式规则



一、特殊字符
eg:\bhi\b.*\blucy\b 这个意思是以hi开头的以lucy结尾的不换行的字符
1.\b 这个叫元字符,代表单词的开头或结尾,即单词的分界处,只是一个位置
2.  . 这个叫元字符,匹配 除 换行符外的任意字符
3.1 * 也是元字符,不代表任何字符,而是指代数量,意味着其前面的内容可以重复数次,重复0次或多次
3.2 + 匹配1个或更多连续的字符,重复1次或多次
3.e ? 重复0次或1次
4. 0-9的数字,表示单一 数字
5. \d 表示一位数字
6. - 连字号
7. \d{2} 表示连续2次前面的字符,\d{2,6} 2<重复<6次
8. \s 匹配任意空白符,包括空格,制表符,换行符,中文全角空格等
9. \w  匹配字幕或数字活下划线或汉字
10. ^ 匹配字符串的开始 和 \b类似
11. $匹配字符串结束


二、特殊字符的匹配
例如匹配 * , . ,\等,需要用转义符 \*,\.,\\


三、匹配字符
[字符]即可
[.?!]匹配标点符号(.或?或!)
指定字符范围: [0-9]与\d 一致 ,[a-z0-9A-Z]
\(?0\d{2}[)-]?\d{8} 表示 (出现1次或0次, 0 ,2位数字, 一次或0次(或-,8位数字


四:分枝条件
 遇到多种情况 用 | 把不同的规则分隔开,使用分枝条件时,要注意各个条件的顺序,因为从左到右匹配时,只要遇到匹配的,就不再往右继续匹配。


\d{3}-\d{8}|\d{4}-\d{7} 匹配 123-12345678 或 1234-1234567


五: 分组 
们已经提到了怎么重复单个字符(直接在字符后面加上限定符就行了);但如果想要重复多个字符又该怎么办?你可以用小括号来指定子表达式(也叫做分组),然后你就可以指定这个子表达式的重复次数了
eg:(\d{3}\.){3}  匹配  111.111.111 


六:反义


有时需要查找不属于某个能简单定义的字符类的字符。比如想查找除了数字以外,其它任意字符都行的情况,这时需要用到反义:
以下代码全为 大写状态




代码/语法 说明
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值