Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 如何指定要匹配的字符数?_Regex - Fatal编程技术网

Regex 如何指定要匹配的字符数?

Regex 如何指定要匹配的字符数?,regex,Regex,我在CMS中有这些资产ID,我需要用常规表达式更新它们 它们的长度为8或9个字符,由所有数字字符(0-9)组成。有没有办法只匹配8或9个数字?我担心我可能没有在谷歌搜索中使用正确的关键词来解决这个问题,而且我还没有在我的备忘单或书籍中找到任何东西,所以我希望这里的人能够为我指明正确的方向 seth大多数正则表达式风格允许您指定要匹配的字符数(我使用PCRE示例): {8,9}表示最少要匹配8位数字,最多要匹配9位数字。^和$确保只匹配8或9位数字的整个字符串,而不仅仅是子字符串。无需担心!那太简

我在CMS中有这些资产ID,我需要用常规表达式更新它们

它们的长度为8或9个字符,由所有数字字符(0-9)组成。有没有办法只匹配8或9个数字?我担心我可能没有在谷歌搜索中使用正确的关键词来解决这个问题,而且我还没有在我的备忘单或书籍中找到任何东西,所以我希望这里的人能够为我指明正确的方向


seth

大多数正则表达式风格允许您指定要匹配的字符数(我使用PCRE示例):


{8,9}
表示最少要匹配8位数字,最多要匹配9位数字。
^
$
确保只匹配8或9位数字的整个字符串,而不仅仅是子字符串。

无需担心!那太简单了

答案是:


/[0-9]{9}/

不匹配长度正好为8位的字符串。根据regex实现以及它是否具有
find
match
方法,您可能需要也可能不需要
^
$
/^[0-9]{8,9}$/