我现在有这样一个:^\+?[()\d -]{6,12}
它允许前导+,允许()-字符和数字。但是字符串的总长度仅限于6-12个字符。
我要做到以下几点:
有效
123456
+123456
+(12) (2)3-5-2无效
1234
1 2 (3) 4
1233451231231 发布于 2022-08-29 10:21:36
你可以用这个正则表达式,
^\+?(?:[()\h-]*\d[()\h-]*){6,12}$解释:
^ -字符串的开始\+? -匹配可选加字符(?:[()\h-]*\d[()\h-]*) -这基本上匹配零或多个非数字允许字符,后面跟着一个单数,然后再匹配零或多个非数字允许字符。{6,12}允许以上文本至少6次,最多12次$ -字符串的结尾您没有提到regex方言,因此如果不支持\h (水平空间),则可以使用普通空间或使用\s
https://stackoverflow.com/questions/73527226
复制相似问题