用于查询正则
符号
字符 | 描叙 |
---|---|
literal | 匹配文本字符串的字面值literal |
re1 | re2 | 匹配正则表达式re1或者re2 |
. | 匹配任何字符(除了\n之外) |
^ | 匹配字符串起始部分 |
$ | 匹配字符串终止部分 |
* | 匹配0次或者多次前面出现的正则表达式 |
+ | 匹配1次或者多次前面出现的正则表达式 |
? | 匹配0次或者1次前面出现的正则表达式 |
{N} | 匹配N次前面出现的正则表达式 |
{M,N} | 匹配M-N次前面出现的正则表达式 |
[…] | 匹配自字符集的任意单一字符 |
[…x-y…] | 匹配x-y范围中的任意单一字符 |
[^…] | 不匹配此字符集中出现的任何一个字符,包括某一范围的字符 |
(*|+|?|{})? | 用于匹配上面频繁出现/重复出现符号的非贪婪版本( *、+、?、{} ) |
(…) | 匹配封闭的正则表达式,然后另存为子组 |
特殊字符
字符 | 描叙 |
---|---|
\d | 匹配任何十进制数字,与[0-9]一致(\D与之相反) |
\w | 匹配任何字母数字字符,与[A-Za-z0-9_]相同,(\W与之相反) |
\s | 匹配任何空格字符,与[\n\t\r\v\f]相同(\S与之相反) |
\b | 匹配任何单词边界(\B与之相反) |
\N | 匹配已保存的子组N(参见上面的(…) ) |
\c | 逐字匹配任何特殊字符c(即,仅按照字面意义匹配,不匹配特殊含义) |
\A(\Z) | 匹配字符串的起始(结束)(另见上面介绍的 ^ 和 $ ) |
扩展表示法
字符 | 描叙 |
---|---|
(?iLmsux) | 在正则表达式中嵌入一个或者多个特殊“标记”参数(或者通过函数/方法) |
(?:…) | 表示一个匹配不用保存的分组 |
(?P…) | 像一个仅由name标识而不是数字ID标识的正则分组匹配 |
(?P=name) | 在同一字符串中匹配由 (?P<name) 分组的之前文本 |
(?#…) | 表示注释,所有内容都被忽略 |
(?=…) | 匹配条件是如果…出现在之后的位置,而不使用输入字符串;称作正向前视断言 |
(?!..) | 匹配条件是如果…不出现在之后的位置,而不使用输入字符串;称作负向前视断言 |
(?<=…) | 匹配条件是如果…出现在之前的位置,而不使用输入字符串;称作正向后视断言 |
(?<!..) | 匹配条件是如果…不出现在之前的位置,而不使用输入字符串;称作负向后视断言 |
(?(id/name)Y/N) | 如果分组所提供的id或者name()名称存在,就返回正则表达式的条件匹配Y,如果不存在,就返回N;|N是可选项 |