正则表达式
基础正则表达式
特殊字符
[:alnum:] 代表英文大小写字符及数字,即0-9,A-Z,a-z
[:alpha:] 代表任何英文大小写字符,即A-Z,a-z
[:digit:] 代表数字而已,即0-9
[:upper:] 代表大写字符,即A-Z
[:lower:] 代表小写字符,即a-z
[:blank:] 代表空格键与[Tab]按键
[:cntrl:] 代表键盘上面的控制按键,即包括CR,LF,Tab,Del等
[:graph:] 除了空格符(空格键与tab键)外的其他所有按键
[:print:] 代表任何可以被打印出来的字符
[:punct:] 代表表单符号,即"'?!;:#$
[:space:] 任何会产生空白的字符,包括空格键Tab CR等
[:xdigit:] 代表十六进制的数字类型,因此包括0-9,A-F,a-f的数字与字符
其中[:alnum:]、[:alpha:]、[:digit:]、[:upper:]、[:lower:]一定要知道代表什么意思,因为它要比a-z或A-Z的用途更确定
RE字符
^word 待查找的字符串在行首
word$ 待查找的字符串在行尾
. 代表一定有一个任意字符的字符
\ 转义字符,将特殊符号的特殊意义去除
* 重复零个到无穷多个的前一个字符
[list] 从字符集和的RE字符里面找出想要选取的字符
[n1-n2] 从字符集合的RE字符里面找出想要选取的字符范围
[^list] 从字符集合的RE字符里面找出不要的字符串或范围
\{n,m\} 连续n到m个的前一个RE字符,若为\{n\}则是连续n个的前一个RE字符,若为\{n,\}则是连续n个以上的前一个RE字符
扩展正则表达式
RE字符
+ 重复一个或一个以上的前一个RE字符
? 零个或一个的前一个RE字符
| 用或(or)的方式找出数个字符串
() 找出"组"的字符串
()+ 多个重复组的判别