常用正则表达式

2022-05-06 10:44:54 浏览数 (1)

一年前看的正则表达式时记录的一些常用的表达式。 常用

代码语言:javascript复制
b 匹配一个位置,例如查找某一具体单词  bhellob
d匹配数字    例: ddd相当于d{3} 匹配三个数字     d{3,5} 数字在3到5个

w 匹配字母、数字或下划线或汉字

s 匹配任意的空白符,包括空格,制表符 换行符 中文全角空格

.匹配除了换行符之外的所有字符

^匹配字符串的开始
$匹配字符串的结束

反义: 相对的正义的大写

注:

1 [^x]匹配除了x外的任意字符

2 [^abc]匹配除了abc外的任意字符

代码语言:javascript复制
*匹配任意数量的不包含换行字符,0次到多次

 匹配1次到多次的不包含换行符

?重复0次或1次 (?   表示'('出现一次或者不出现

{n}重复n次 {n,}重复n次或多次 {n,m}重复n到m次

(懒惰匹配:后面加“?” 表示尽可能减少重复,例如:*?    表示匹配任意次,但尽可能少)

表示转义,查找“”要用\



    [] 或 例子:

1. [0-9]相当于d 

2. [0-9a-z]

    分支条件
| 例子: 0d{2}-d{8}|0d{3}-d{7}  

匹配020-12345678或者0750-1234567这样的表达式

()对正则表达式进行分组

(d{3}.){3}d{1,3} 匹配一个ip地址,但是对大小不检验

高端用法

后向引用:

代码语言:javascript复制
1. (exp)匹配exp并到自动命名分组

2. (?<name>exp)或写成(?'name'exp)匹配exp到name分组  内,使        用时k<name>

3. (?:exp)匹配exp但是不捕获也不分组

(?=exp)匹配exp结尾的前面部分

(?<=exp)匹配exp结尾的后面部分

(?!exp) 匹配后面跟的不是exp的位置

(?<!exp)   匹配前面不是exp的位置

参考链接

0 人点赞