正则表达式基本语法
1.1字符集和单词
.用于匹配除换行符之外的任意的一个字符
方括号[]用于指定一个字符集,只能匹配其中的一个字符
连字符-用于描述一个范围
为了严格匹配一个单词,需要加上\<和>\
ps:正则表达式中对单词的定义,单词指的是两侧由非单词字符分割的字符串。非单词指的是字幕、数字、下划线以为的所有字符1.2字符类
类 匹配字符 [[:alnum:]] 文字、数字字符 [[:alpha:]] 字母字符 [[:lower:]] 小写字母 [["upper"]] 大写字母 [[:digit:]] 小数 [[:xdigit:]] 十六进制数字 [[:punct:]] 标点符号 [[blank]] 制表符和空格 [[:space:]] 空格 [[:cntrl:]] 所有控制符 [[:print:]] 所有可打印的字符 [[:graph:]] 除空格外所有可打印的字符 1.3位置匹配
^和$分别用于匹配行首和行尾。
1.4转义字符
\表示转义
1.5重复
元字符 描述 * 重复0次或更多次 + 重复一次或更多次 ? 重复0次或一次 {n} 重复n次 {n,} 重复n次或更多次 {n,m} 重复不少于n次,不多于m次 1.6反义
[^y]表示除了字母y的任何字符
注意:^放在行首和反义时的区别
^[^y] ##匹配所有不以字母y开头的行1.7分支
|表示分支
1.8逆向引用
在子表达式中捕获的内容可以在正则表达式中的其他地方再次使用,用户可以使用反斜杠"\"加上子表达式的编号来指代该分组分配到的内容。