?匹配前面一个表达式0次或者1次。等价于 {0,1}。
*匹配0个或多个,等价于 {0,}。
+ 匹配前面一个表达式 1 次或者多次,等价于 {1,}。
.(小数点)默认匹配除换行符之外的任何单个字符。
例如,/.n/ 将会匹配 "nay, an apple is on the tree" 中的 'an' 和 'on',但是不会匹配 'nay'。
x|y 匹配‘x’或者‘y’。
[xyz] 一个字符集合。
[^xyz] 一个反向字符集。也就是说, 它匹配任何没有包含在方括号中的字符。
\d 匹配一个数字。等价于[0-9]。
\D 匹配一个非数字字符。等价于[^0-9]。
\s 匹配一个空白字符,包括空格、制表符、换页符和换行符。
\S 匹配一个非空白字符。
\w 匹配一个单字字符(字母、数字或者下划线)。等价于 [A-Za-z0-9_]。
\W 匹配一个非单字字符。等价于 [^A-Za-z0-9_]。
^匹配输入的开始。
$匹配输入的结束。
正则表达式标志
g:global模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止;
i:不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写;
m:多行(multiline)模式,即在到达一行文本末尾时还会继续查找下一行中是否存在与模式匹配的项。
s允许. 匹配换行符。
u使用unicode码的模式进行匹配。
y执行“粘性(sticky)”搜索,匹配从目标字符串的当前位置开始。
网友评论