正则表达式只有7位和9位数

Noo*_*oon 6 regex

我只搜索7位数字的正则表达式,只搜索9位数的正则表达式,我找到的只是[0-7]和[0-9],不是精确的7和9位数 - 不再短 -

我怎么能找到那些?

pha*_*t0m 27

匹配七位数:

^\d{7}$
Run Code Online (Sandbox Code Playgroud)

匹配九位数:

^\d{9}$
Run Code Online (Sandbox Code Playgroud)

如果要匹配七位或九位数,请使用:

^(\d{7}|\d{9})$
Run Code Online (Sandbox Code Playgroud)

或者只是这样:

^\d{7}(\d{2})?$
Run Code Online (Sandbox Code Playgroud)

量词:花括号中的数字就是我们所说的量词,它决定了前一个模式(括号中的字符或组)的重复次数.

字符串(或行)的开头结尾分别用插入符号^和美元符号表示$.

管道字符 |被用于提供两个备选图案.它是要知道重要的是,它的优先级是最低的(感谢雷纳提醒我),也就是说,它要么匹配一切其左或右,除非用括号限制.