Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.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 用于验证xx-xxxxxxx或xxx-xx-xxxxx的正则表达式_Regex - Fatal编程技术网

Regex 用于验证xx-xxxxxxx或xxx-xx-xxxxx的正则表达式

Regex 用于验证xx-xxxxxxx或xxx-xx-xxxxx的正则表达式,regex,Regex,我正在尝试构建一个正则表达式验证器,它只接受以下格式的值:- 字符串1=xxx xx xxxx 或 字符串1=xx-xxxxxxx 如何使正则表达式接受同一元素的两种值 x只代表数字 所以总位数=9(0-9之间的任何数字) 值中的元素总数为11或10。。。取决于哪种格式 破折号的总数为2或1 如何将其写入正则表达式?谁能给我指出正确的方向:-文章/网站 我对正则表达式有一定的了解,在正则表达式中我可以验证电话号码和日期等。所以,一点帮助会有很大的帮助。谢谢。您可以试试下面的正则表达式 ^(?:\

我正在尝试构建一个正则表达式验证器,它只接受以下格式的值:-

字符串1=xxx xx xxxx

字符串1=xx-xxxxxxx

如何使正则表达式接受同一元素的两种值

x只代表数字

所以总位数=9(0-9之间的任何数字)

值中的元素总数为11或10。。。取决于哪种格式

破折号的总数为2或1

如何将其写入正则表达式?谁能给我指出正确的方向:-文章/网站


我对正则表达式有一定的了解,在正则表达式中我可以验证电话号码和日期等。所以,一点帮助会有很大的帮助。谢谢。

您可以试试下面的正则表达式

^(?:\d{3}-\d{2}-|\d{2}-\d{3})\d{4}$

说明:

^                        the beginning of the string
(?:                      group, but do not capture:
  \d{3}                    digits (0-9) (3 times)
  -                        '-'
  \d{2}                    digits (0-9) (2 times)
  -                        '-'
 |                        OR
  \d{2}                    digits (0-9) (2 times)
  -                        '-'
  \d{3}                    digits (0-9) (3 times)
)                        end of grouping
\d{4}                    digits (0-9) (4 times)
$                        before an optional \n, and the end of the
                         string
试试这个。看演示


你试过什么?破折号可以在任何地方吗?即使在字符串的开头/结尾?不,格式必须相同123-45-6789或12-3456789I可以构建正则表达式来检查[0-9]{9}位。然后分别检查破折号。但我不知道如何组合这些。谢谢。对我有用。很好用,谢谢!很高兴知道,在使用regex101多年后,我现在得到的只是..'不幸的是,您的浏览器似乎不符合正确呈现和使用此网站的标准。“。我使用的是FF,现在使用的是regexr.com,谢谢你的精心设计。我确实理解这两个示例(您的和vks)中的情况。您的比vks更紧凑。荣誉
^\d{3}-\d{2}-\d{4}$|^\d{2}-\d{7}$