Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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
Php 用于简单验证的正则表达式_Php_Regex_Validation - Fatal编程技术网

Php 用于简单验证的正则表达式

Php 用于简单验证的正则表达式,php,regex,validation,Php,Regex,Validation,我正在编写一些代码,需要进行一些验证,因此我需要一个正则表达式来验证我,以检查输入的字符串是否在AB000001到AB200000之间 任何人都可以发布正则表达式,甚至是一个替代的都可以 谢谢大家,如果您使用的是PHP,您只需使用substr即可: 函数verif($input){ return((((substr($input,0,2)='AB')&&&(substr($input,2,6)>=1))&(substr($input,2,6)Regex对于这一个来说是很困难的,而且Regex看

我正在编写一些代码,需要进行一些验证,因此我需要一个正则表达式来验证我,以检查输入的字符串是否在AB000001到AB200000之间

任何人都可以发布正则表达式,甚至是一个替代的都可以


谢谢大家,

如果您使用的是PHP,您只需使用substr即可:


函数verif($input){

return((((substr($input,0,2)='AB')&&&(substr($input,2,6)>=1))&(substr($input,2,6)Regex对于这一个来说是很困难的,而且Regex看起来也很可怕

您可以将字符串拆分为两部分,而不是正则表达式,第一部分只有
AB
,第二部分只有数字。然后检查数字是否在范围内

$string = "AB200000";
$splits = preg_split("/(?<=^AB)(?=\d{6}$)/", $string);
if($splits[1] >= 1 && $splits[1] <= 200000){
    print "bingo!\n";
}
$string=“AB200000”;

$splits=preg_split(“/(?不是您想要的,而是可怕的regexp方法的简单开始:

AB[012][0-9][0-9][0-9][0-9][0-9]  # would match    AB000000 to AB299999
AB[012][0-9]{5}                   # (same) matches AB000000 to AB299999
AB([01][0-9]{5}|200000)           # matches AB000000 to AB200000 (tantalisingly close)
您希望排除AB000000和AB200001(及以上)的情况:

将AB000001与AB099999匹配:

AB(0[0-9][0-9][0-9][0-9][1-9]|0[0-9][0-9][0-9][1-9][0-9]|0[0-9][0-9][1-9][0-9][0-9]|0[0-9][1-9][0-9][0-9][0-9]|0[1-9][0-9][0-9][0-9][0-9])     
将AB000001与AB200000匹配:

AB([12]00000|[01][0-9][0-9][0-9][0-9][1-9]|[01][0-9][0-9][0-9][1-9][0-9]|[01][0-9][0-9][1-9][0-9][0-9]|[01][0-9][1-9][0-9][0-9][0-9]|[01][1-9][0-9][0-9][0-9][0-9])
在编程上,最好匹配AB([0-9]{6}),将数字放入变量中。
然后检查是number>0,number花几分钟在互联网上搜索如何编写自己的正则表达式,这是一个当您陷入困境并试图找到解决方案但无法解决问题时提供帮助的网站。输入的字符串在AB000001到AB200000之间。
字符串没有范围,只有排序。