Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.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,我想检查字符串的开头是否有+号,并且字符串是不超过15个整数的数字。此外,字符串不应在整数之间包含任何特殊字符或- 我正在使用这个正则表达式:/\+?(?:(?:63)| 0)*[.-]?9[0-9]{2}[.]?[0-9]{3}[.]?[0-9]{3,4}/Ui 但如果字符串在+号之后没有9,则会显示错误。e、 g.如果我使用+891234567,则显示错误 请帮助将使用“以+开头,后跟1到15位”表达式 ^\+[[:digit:]]{1,15} 这显然不是你想要的,但从问题上看,除了上面提

我想检查字符串的开头是否有+号,并且字符串是不超过15个整数的数字。此外,字符串不应在整数之间包含任何特殊字符或-

我正在使用这个正则表达式:
/\+?(?:(?:63)| 0)*[.-]?9[0-9]{2}[.]?[0-9]{3}[.]?[0-9]{3,4}/Ui

但如果字符串在+号之后没有
9
,则会显示错误。e、 g.如果我使用
+891234567
,则显示错误

请帮助

将使用“以
+
开头,后跟1到15位”表达式

^\+[[:digit:]]{1,15}

这显然不是你想要的,但从问题上看,除了上面提到的,你还不清楚你希望做什么。请用这个更好地解释你真正想要什么。

如果我理解你在寻找什么,下面的正则表达式应该会有所帮助

^\+\d{1,15}

祝你好运

“它显示错误”是什么意思?你能解释一下你真正想要匹配的是什么吗。。您所述的描述与该正则表达式完全不同。因此,要么您的正则表达式太离谱,要么您没有完全解释整个上下文基于您的描述,这就是您可以使用的:
/^+?\d{1,15}$/
这与带有可选
+
前缀的1到15位数字(包括)匹配。但这与你发布的正则表达式有很大的不同…它显示了一个错误,我的意思是它不会将这个数字传递给db,即使这个数字是有效的整数。所谓有效,我的意思是它在字符串开头包含+符号。您使用的是什么语言?谢谢Floris,Crayon建议的代码非常有效+我也为你准备了一份