正则表达式用法大全

推荐练习正则表达式的网站 regexr

 

表达式 含义 说明
. 任一字符 不含换行符
\. 只匹配 . \为转义符,让'.'变为普通的dot(点)
\w word charactor

数字、字母、下划线

\W \w的补集 除数字、字母、下划线之外
\d 数字 等于[0-9]
\D 除数字外 包括空格
\s 空白 空格、制表符、换行符
\S \s的补集  
[] 集合 任一存在与集合中的字符
[abc] a或b或c  
+ 一次或多次 等于{1,}
* 零次或多次

等于{0,}

零次或一次 等于{0,1}
\b word boundary 单词前后的边界
{1,4} 1到4次 指定重复范围
{2} 2次  
{2,} 至少两次  

分组匹配:(模式)

例子:

expression:       /.+(h\w{3,}).+(h\w{3,})/g    匹配以h开头长度大于4的单词

text:            romeo is handsome, and he is hardworking.

replace:        romeo is $2, and he is $1.
result:          romeo is hardworking, and he is handsome.

分组匹配但不捕获(?:模式)

第一个()为$1,第二个()为$2,但若将第一个使用(?:)后,则第一个无法用$捕获,第二个( )变为$1。

 

正向预查(?=模式)

(?=模式)正向肯定预查

正则表达式用法大全_第1张图片

(?!模式)正向否定预查

正则表达式用法大全_第2张图片

 

反向预查(JavaScript不支持)

比正向预查多个小于号,要放在待匹配模式的前面。例如:(?<=$)\d

你可能感兴趣的:(正则表达式)