正则表达式
什么是正则表达式
正则表达式是一种用于匹配和操作文本的强大工具,它是由一系列字符和特殊字符组成的模式,用于描述要匹配的文本模式。
正则表达式可以在文本中查找、替换、提取和验证特定的模式。
正则表达式测试网站
一个测试正则表达式的网站:regex101: build, test, and debug regex
常用元字符和符号
元字符/符号 | 作用 | 示例 | 匹配结果 |
---|---|---|---|
. |
匹配任意单个字符(不包括换行符) | a.b |
匹配 a+b 或 a-b |
* |
匹配前一个字符 0 次或多次 | ab* |
匹配 a 、ab 、abb |
+ |
匹配前一个字符 1 次或多次 | ab+ |
匹配 ab 、abb |
? |
匹配前一个字符 0 次或 1 次 | ab? |
匹配 a 或 ab |
^ |
匹配字符串的开头 | ^abc |
匹配以 abc 开头的字符串 |
$ |
匹配字符串的结尾 | xyz$ |
匹配以 xyz 结尾的字符串 |
[] |
匹配括号中的任意一个字符 | [abc] |
匹配 a 、b 、c |
[^] |
匹配不在括号中的任意一个字符 | [^abc] |
匹配非 a 、b 、c 的字符 |
| |
或,匹配符号两边的任意一个模式 | `a | |
{n} |
匹配前一个字符恰好 n 次 | a{3} |
匹配 aaa |
{n,} |
匹配前一个字符至少 n 次 | a{2,} |
匹配 aa 、aaa |
{n,m} |
匹配前一个字符 n 到 m 次 | a{1,3} |
匹配 a 、aa 或 aaa |
() |
分组,用于提取或限定表达式优先级 | (ab)+ |
匹配 ab 、abab |
\ |
转义字符,用于匹配元字符本身 | \. |
匹配 . |
Comments NOTHING