使用正则表达式匹配任何大于 15 的数字
To match any number greater than 15 using regexp
我尝试使用以下正则表达式匹配任何大于 15 的数字:
0*[1-9][6-9][0-9]*
但我只能匹配 2 位数字,例如。我可以成功取消匹配 12
或 13
(小于 15
),而我无法匹配 105
、124
等。
谁能帮我解决这个问题。
任何大于 15 的数都是
任何有 3 位或更多位且可能有前导 0 的数字
第一个数字在字符 class [2-9]
中的任何 2 位数字
第一个数字为 1 第二个数字为字符 class [6-9]
的任何数字
根据这三个规则我们可以构建正则表达式,假设我们匹配的内容只包含数字
/^0*(?:[1-9][0-9]{2,}|[2-9][0-9]|1[6-9])$/
如果您不能使用扩展的正则表达式,那么下面的方法应该可行
/^0*[1-9][0-9][0-9][0-9]*|0*[2-9][0-9]|0*1[6-9]$/
我尝试使用以下正则表达式匹配任何大于 15 的数字:
0*[1-9][6-9][0-9]*
但我只能匹配 2 位数字,例如。我可以成功取消匹配 12
或 13
(小于 15
),而我无法匹配 105
、124
等。
谁能帮我解决这个问题。
任何大于 15 的数都是
任何有 3 位或更多位且可能有前导 0 的数字
第一个数字在字符 class [2-9]
中的任何 2 位数字
第一个数字为 1 第二个数字为字符 class [6-9]
的任何数字
根据这三个规则我们可以构建正则表达式,假设我们匹配的内容只包含数字
/^0*(?:[1-9][0-9]{2,}|[2-9][0-9]|1[6-9])$/
如果您不能使用扩展的正则表达式,那么下面的方法应该可行
/^0*[1-9][0-9][0-9][0-9]*|0*[2-9][0-9]|0*1[6-9]$/