php - 正则表达式的较短方式

标签 php regex pcre

这必须仅匹配这些数字:110、220、330、440、550、660、770、880、990(不包括 000)。这个正则表达式 (pcre) 有更短的方法吗?

/^(1{2}|2{2}|3{2}|4{2}|5{2}|6{2}|7{2}|8{2}|9{2})0$/

最佳答案

您可以使用:

/\b([1-9])\g{1}0\b/

RegEx Demo

正则表达式的分解:

\b      # word boundary
[1-9]   # match digit 1-9 and group them as captured group #1
\g{1}   # back-reference to group #1
0       # match 0
\b      # word boundary

关于php - 正则表达式的较短方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30592472/

相关文章:

php - 如何从table1中获取值,在table2中搜索,找到后 - 获取第一个值的行值?

java - 获取字符串中引号后的第一个单词“(Java)

php - 替换模式内的所有事件

regex - 捕获不属于链接的特定单词的所有出现

php - 需要防止 PHP 正则表达式段错误

php - 删除/隐藏具有 'Pass' 结果的类似记录

php - 如何从mysql数据库中搜索整个句子?

java - 链接仅适用于我自己的应用程序

python - 在 python 中,是否有最佳实践方法来清理包含需要转义字符的正则表达式搜索字符串?

c++ - 让 svn diff 在提交期间显示 C++ 函数