什么是正则表达式?
- 一种文本模式
- 包括普通字符+特殊字符
- 对字符串进行操作
普通字符:例如a 到 z 之间的字母
特殊字符:元字符
为什么用正则表达式?
- 测试字符串内的模式:数据验证
- 替换文本:用正则识别特定文本,完全删除该文本或用其它文本替换
- 提取子字符串
应用领域很广
- C#
- Java
- JavaScript
- Python
- Ruby
and so on…
语法
正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。
- 普通字符
- 非打印字符
- 特殊字符:
若要匹配这些特殊字符,必须首先使字符"转义",就是将反斜杠字符\ 放在它们前面。 - 限定符:
通过在 *、+ 或 ? 限定符之后放置 ?,该表达式从"贪心"表达式转换为"非贪心"表达式或者最小匹配。 - 定位符:
不能将限定符与定位符一起使用。 - 选择:
圆括号将所有选择项括起来,相邻的选择项之间用|分隔。
圆括号副作用:使相关的匹配会被缓存,此时可用?:放在第一个选项前来消除这种副作用。 - 反向引用:
反向引用的最简单的、最有用的应用之一,是提供查找文本中两个相同的相邻单词的匹配项的能力。
语法详述-引自菜鸟教程
reference:元字符列表+描述
运算符优先级
匹配规则
这些内容读起来没什么难的,关键在遇到实际要用的时候怎么想怎么用。
so…u know 菜鸟都是从模仿开始的…