繁体   English   中英

正则表达式 - 也允许空字符串

[英]Regular expression - also empty string allowed

我有以下正则表达式...这一个不允许空字符串。 我该如何操纵?

var phoneReg = new RegExp(/^\+?[0-9]+(\([0-9]+\))?[0-9-]*[0-9]$/i);

只需使用“零或一”运算符? , 如:

/^(?:regex)?$/
           ^

(?:regex)只是让有关的地面无法控制 (即,如果有的话,无需更改你的$X\\X?X索引)。

我相信以下内容可行:

/^$|^\+?[0-9]+(\([0-9]+\))?[0-9-]*[0-9]$/i

我插入了^$| 在正则表达式的开头。 管道( | )被称为“交替”指示符,表示它之前或之后的表达式必须匹配。 ^$将简单地匹配输入的开始和结束之间没有字符的字符串。 结果:空字符串或原始表达式。

你可以放一个^ $ | 在前面哪个^ =开头,$ =结束,| =或者右边的其他东西。

var phoneReg = new RegExp(/^$|^\+?[0-9]+(\([0-9]+\))?[0-9-]*[0-9]$/i);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM