带问号的正则表达式

Pra*_*van 0 regex

colou?r比赛colorcolour

但是以下是?做什么的?

(first group)(second group)?(third group)
Run Code Online (Sandbox Code Playgroud)

fge*_*fge 7

它是一个量词,意思是"零或一".它适用于它之前的原子,因此,在这里,u.

它是众多正则表达式元字符之一,这意味着,如果你想匹配一个文字问号,你将不得不逃避它(如在\?)中,除了在字符类中.

至于你的第二个例子:

(first group)(second group)?(third group)
Run Code Online (Sandbox Code Playgroud)

它具有完全相同的含义.(...)除了允许反向引用之外,分组运算符还具有将任何东西转化为原子的良好效果.

这意味着,在这里,正则表达式匹配的文本second group可以出现0或1次,类似于uin Colou?r.

http://www.regular-expressions.info/reference.html