正则表达式
1.正则表达式的作用
1.1搜索指定模式的字符串 1.2验证字符串是否符合某种模式(比如,电话号码,邮件,密码等) 1.3替换字符串中指定模式的子字符串。适合用于批量替换一定规律的字符串2.正则表达式的基本定义 2.1直接量字符 \o NUL字符(\u0000) \t 制表符(\u0009) \n 换行符(\u000A) \v 垂直制表符(\u000B) \f 换页符(\u000C) \r 回车符(\u000D) \xnn 由十六进制nn指定的拉丁字符,例如\x0A等价于\n \uxxx 由十六进制数xxxx指定的Unicode字符,例如\u0009等价于\t \cX 控制字符^X,例如,\cJ等价于换行符\n 2.2字符类 [...] 匹配方括号内的任意字符 [^...] 匹配不在方括号内的任意字符 . 匹配除换行符和其他Unicode行终止符之外的任意字符 \w 匹配任何ASCII字符组成的单词,等价于[a-zA-Z0-9] \W 匹配任何不是ASCII字符组成的单词,等价于[^a-zA-Z0-9] \s 匹配任何Unidoce空白符 \S 匹配任何非Unicode空白符的字符 \d 匹配任何ASCII数字,等价于[0-9] \D 匹配任何非ASCII数字的字符,等价于[^0-9] [\b] 匹配退格直接量 2.3重复字符语法 {n,m} 匹配前一项至少n次,最多m次 {n,} 匹配前一项至少n次 {n} 匹配前一项n次 ? 匹配前一项0次或1次,等价于{0,1} + 匹配前一项1次或多次,等价于{1,} * 匹配前一项0次或多次,等价于{0,} 2.4选择、分组、引用字符 | 选择,匹配的是该符号左边的子表达式或右边的子表达式 (...) 组合,将几个项组合为一个单元,这个单元可通过 * + ? | 等符号加以修饰,而且可以记住和这个组合相匹配的字符串以供此后的引用使用 (?:...) 只组合,把项组合到一个单元,但不记忆与该组匹配的字符 \n 和第n个分组第一次匹配的字符相匹配,组是圆括号中的子表达式 2.5锚字符 ^ 匹配字符串的开头、在多行检索中,匹配一行的开头 $ 匹配字符串的结尾、在多行检索中,匹配一行的结尾 \b 匹配一个单词的边界位置 \B 匹配非单词边界的位置3.正则表达式的应用例子