15-正则表达式
2018-08-03 本文已影响0人
微醉那一抹殷红
-
正则表达式常用符号
| 表达式符号 | 符号功能 |
|---|---|
| . | 任意字符 |
| \w | 数字、字母、下划线 |
| \W | 非数字、字母、下划线 |
| \d | 数字 |
| \D | 非数字 |
| \s | 空白、换行、制表符 |
| \S | 非空白、换行、制表符 |
| ^ | 开头 |
| $ | 结束 |
| \b | 单词边界 |
| \B | 非单词边界 |
-
组合符号
| 符号 | 功能 |
|---|---|
| [ ] | 匹配 [ ] 中出现的任意一个字符 |
| [ ^ ] | 匹配不在 [ ] 中出现的任意一个字符 |
| * | 匹配0次或者多次 |
| + | 匹配1次或这多次 |
| ? | 匹配0次或者1次 |
| | | 匹配满足竖线前后内容的任何一方 |
| ( ) | 让()中的正则条件编程一个整体,进行整体操作 |
| {N} | 匹配N次 |
| {N , } | 匹配至少N次 |
| {M , N} | 匹配至少M次,最多N次 |
| [0-9] | 匹配任意一个数字字符 |
| [a-z] | 匹配a到z之间的任意一个字母字符 |
| [A-Z] | 匹配A到Z之间的任意一个字母字符 |
| [a-zA-Z] | 匹配任意一个字母字符 |
-
注意
正则中:\ [] {} () * + ? ^ | $ 这些字符,都有特殊的意义,所以要在正则表达式中单纯的表达这些符号,需要在符号前面加反斜杠‘ \ ’
- '-' [] ^ \ 在括号中可能是特殊字符,需要加 \
- . {} () * + ? $ |在括号中可以不用加\,来表示字符
-
常用方法
| 方法 | 功能 |
|---|---|
| compile ( 正则字符串 ) | 将正则表达式字符串转换成对象 |
| fullmatch(正则表达式,需要匹配的字符串) | 完全匹配 |
| .group ( ) | 获取匹配到的内容 |
| .span ( ) | 获取匹配到的范围 |
| .start ( ) | 获取匹配到的开始下标 |
| .end ( ) | 获取匹配到的结束下标 |
| .string | 判断字符串是否是某个字符串 |
| match (正则表达式,字符串) | 不完全匹配;从头开始匹配 |
| search ( 正则表达式,字符串 ) | 获取整个字符串中第一个符合正则条件的子串 |
| findall ( 正则表达式,字符串) | 获取所有满足正则条件的子串 |
| .finditer ( 正则表达式,字符串) | 同上,返回的是一个迭代器 |
| .split ( 正则表达式,字符串 ) | 按照匹配到的内容进行切割 |
| sub ( 正则表达式,新的字符串,原字符串 ) | 用心的内容替换匹配到的子串 |
易竹小居士.jpg