我正在尝试编写一个只允许小写字母和最多 10 个字符的 regular expression。我到目前为止看起来像这样:
pattern: /^[a-z]{0,10}+$/
这不起作用或编译。我有一个只允许小写字母的工作,它是这样的:
pattern: /^[a-z]+$/
但我需要将字符数限制为 10。
^[a-z]{0,10}+$
可以在某些语言上编译,其中一些值得注意的是 Java、Perl (5.10+)、PHP、Ruby (1.9+)。有关详细信息,请参阅 this page。
您可以使用花括号来控制出现次数。例如,这意味着 0 到 10:
/^[a-z]{0,10}$/
选项包括:
{3} 恰好出现 3 次;
{6,} 至少出现 6 次;
{,4} 最多出现 4 次;
{2,5} 2 到 5 次出现。
请参阅 regular expression reference。
您的表达式在右大括号后有一个 +,因此出现了错误。
/^[a-z]{0,10}$/
应该可以工作。 /^[a-z]{1,10}$/
如果您想匹配至少一个字符,就像 /^[a-z]+$/
一样。
在字符串末尾添加贪婪匹配可能是有益的,因此您可以接受字符串>大于 10 并且正则表达式只会返回前 10 个字符。 /^[a-z0-9]{0,10}$?/
grep '^[0-9]\{1,16\}' | wc -l
给出具有完全匹配计数的计数与限制
pattern: /[\w\W]{1,10}/g
我在我的案例中使用了这个表达式,它包含了文本中所有可用的字符。
不定期副业成功案例分享
^
以仅匹配名称为1234
或5678
的请求,并且我必须包含 $ 符号,
和10
之间添加空格({0, 10}
不起作用)。