Regexp
date
Jan 25, 2024
slug
Regexp
status
Published
tags
Regexp
CS
summary
regexp reference
type
Post
- 字符匹配:
.
:匹配任意一个字符。\w
:匹配任意一个字母、数字或下划线。\d
:匹配任意一个数字。\s
:匹配任意一个空白字符(空格、制表符、换行符等)。
- 字符集合:
[abc]
:匹配字符集合中的任意一个字符。[^abc]
:匹配除了字符集合中的任意一个字符以外的字符。[a-z]
:匹配任意一个小写字母。[0-9]
:匹配任意一个数字。
- 重复匹配:
:匹配前面的字符零次或多次。
+
:匹配前面的字符一次或多次。?
:匹配前面的字符零次或一次。{n}
:匹配前面的字符恰好 n 次。{n,}
:匹配前面的字符至少 n 次。{n,m}
:匹配前面的字符至少 n 次,但不超过 m 次。
- 位置锚定:
^
:匹配字符串的开始位置。$
:匹配字符串的结束位置。\b
:匹配单词边界。
- 分组和引用:
()
:用于创建一个分组。\1
,\2
, ...:用于引用分组。例如,\1
引用第一个分组。
- 转义字符:
\
:用于转义特殊字符,使其失去特殊含义。例如,\\
匹配反斜杠字符。
- 选择操作符:
|
:用于在两个或多个模式之间进行选择,类似逻辑上的“或”。
- 非贪婪匹配:
?
,+?
,??
:使重复匹配变为非贪婪,尽可能匹配最少的字符。