我是正则表达式的初学者,所以你的帮助对我来说非常大。 我有这个模式字符串:
@"^\(\d\d\d\) \d\d\d-\d\d\d\d$"
仅以此格式匹配电话号码:(555)555-5555 但我真正需要的是要遵循的顺序,而不是字符和位置的确切数量。所以我需要以下顺序:
这可能吗? 谢谢。
答案 0 :(得分:2)
那么,这样的事情呢?
^\(\d+\)\s*\d+-\d+
1 Open Paren
2 Numbers
3 Close Paren
4 Space
5 Numbers
6 Dash
7 Numbers
编辑:在关闭paren
之后向空格添加(无或多个)量词答案 1 :(得分:0)
使用+
代替固定数量的字符?
@"^\(\d+\) \d+-\d+$"
答案 2 :(得分:0)
答案 3 :(得分:0)
如果您不在乎区号中有多少个号码或号码,您可以使用:
^\s*\(\s*\d+\s*\)\s*\d+\s*-\s*\d+\s*$
这允许在括号和短划线周围以及数据的开头和结尾处有任意数量的空白区域(包括没有空格)。
如果您确实关心了多少个数字,请使用\d{1,3}
代替\d+
。这允许在一个地方1-3位数。