如何将任何一个字符与正则表达式匹配?
我正在撰写此问题和以下答案以供一般参考。关于Stack Overflow的许多其他问题听起来像是答应快速回答,但实际上是在询问更具体的问题。
我的参考答案如下。
答案 0 :(得分:27)
.
字符作为通配符来匹配任何单个字符。示例正则表达式:a.c
abc // match
a c // match
azc // match
ac // no match
abbc // no match
[]
来匹配集合中的任何字符。\w
匹配任何单个字母数字字符:0-9
,a-z
,A-Z
和_
(下划线)。\d
匹配任何单个数字。\s
匹配任何单个空白字符。示例1正则表达式:a[bcd]c
abc // match
acc // match
adc // match
ac // no match
abbc // no match
示例2正则表达式:a[0-7]c
a0c // match
a3c // match
a7c // match
a8c // no match
ac // no match
a55c // no match
使用方括号中的帽子 [^]
来匹配除了^
之后的任何字符之外的任何单个字符。
示例正则表达式:a[^abc]c
aac // no match
abc // no match
acc // no match
a c // match
azc // match
ac // no match
azzc // no match
(不要将^
中的[^]
与其他用法混淆为行首字符:^
=行首,{{1} } = line end。)
在任何字符后面使用可选字符 $
指定该字符的零次或一次出现。因此,您可以使用?
来匹配任何单个字符。
示例正则表达式:.?
a.?c
答案 1 :(得分:3)
简单答案
如果要匹配单个字符,请将其放在这些括号内 []
示例
...等等。您可以在以下网站上在线检查常规投放情况:https://regex101.com/
(根据评论进行了更新)