正则表达式学习
@([03] Vim)
转载请注明原文链接:正则表达式学习
哪些情况可以使用正则表达式
- 测试字符串内的模式:例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。
- 替换文本:识别文档中特定的文本,完全删除或者替换该文本。
- 基于模式匹配从字符串中提取子字符串。可以查找文档中或输入域内特定的文本
语法
| 字符 | 描述 |
|---|
| ^ | 匹配输入字符串的开始位置 |
| $ | 为匹配输入字符串的结束位置 |
匹配字符
| 字符 | 描述 |
|---|
| [0-9] | 匹配单个数字 |
| [0-9]+ | 匹配多个数字 |
| \d | 匹配一个数字字符 |
| \D | 匹配一个非数字字符 |
| \w | 匹配一个包括下换线的任何单词字符 |
| \W | 匹配匹配任何非单词字符 |
| \s | 匹配任意空白字符,包括空格、制表符、换页符等等。 |
| \S | 匹配任意非空白字符 |
| . | 任意字符 |
转载请注明原文链接:正则表达式学习
匹配非打印字符
| 字符 | 描述 |
|---|
| \f | 匹配一个换页符 |
| \n | 匹配一个换行符 |
| \r | 匹配日一个回车符 |
| \t | 匹配一个制表符 |
| \v | 匹配一个垂直制表符 |
匹配次数
| 字符 | 描述 |
|---|
| + | 匹配1次或多次 |
| * | 匹配0次 、1次或多次 |
| ? | 匹配0次或1次 |
| {n} | 匹配确定的n次(n为非负整数) |
| {n,} | 至少匹配n次(n为非负整数) |
| {n,m} | 匹配最少n次最多m次 |
匹配范围
| 字符 | 描述 |
|---|
| x|y | 匹配x或y。例如,’z|food’ 能匹配 “z” 或 “food”。’(z|f)ood’ 则匹配 “zood” 或 “food”。 |
| [] | 字符范围。例如:[a-z]所有的小写字符或者[xy]匹配x、y字符。 |
| [^] | 字符范围。例如:[^a-z]所有的除小写字符之外的字符或者[^xy]匹配除x、y之外的字符。^代表不包含 |