正则学习笔记

前端之家收集整理的这篇文章主要介绍了正则学习笔记前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

正则匹配字符串就是解析字符串的特征,然后用正则的语言把它表达出来。

推荐两个我使用的文档和工具:

正则表达式入门教程
正则表达式在线测试工具

位置(断言)

\b      匹配单词的开始或结束
^       匹配字符串(行)的开始
$       匹配字符串(行)的结束

字符

.       匹配除换行符(\n)以外的任意字符
\w      匹配字母数字下划线或汉字
\s      匹配任意的空白符    
\d      匹配数字
\n      匹配换行
\r      匹配回车

数量

'*'      匹配零次或多次
'+'      匹配一次或多次
'?'      匹配零次或一次
{n}      重复n次
{n,}     重复n到n+次
{n,m}    重复n到m次

字符类

[character_group]           匹配character_group中任何的单个字符
[^character_group]          匹配不在character_group中的任何单个字符
[first-last]                匹配从第一个到最后一个的范围中的任何单个字符

分组

(exp)               匹配exp,并捕获文本到一个从 1 开始的序号中
(?<name>exp)        匹配exp,并捕获文本到name命名组中
(?:exp)             匹配exp,不捕获,不分配

(?=exp)             零宽度正预测先行断言,匹配exp前面的位置
(?!exp)             零宽度负预测先行断言,匹配后面跟的不是exp的位置
(?<=exp)            零宽度正回顾后发断言,匹配exp后面的位置
(?<!exp)            零宽度负回顾后发断言,匹配前面不是exp的位置

(?>exp)             非回溯(也称为“贪婪”)子表达式

反向引用

\num                后向引用。匹配编号子表达式的值
\k<name>            命名后向引用。匹配命名表达式的值。

选项

i      不区分大小写
m      多行模式(一行相当于一个字符串)
s      单行模式(多行相当于一行)

猜你在找的正则表达式相关文章