我是正则表达式的初学者,所以你对我的帮助将非常大。 我有这样的模式字符串:单个字符串中的两种交替模式的正则表达式
@"^\(\d\d\d\) \d\d\d-\d\d\d\d$"
仅在该格式相匹配的电话号码:(555)555-5555 但我真正需要的,是应遵循的顺序,而不是角色和位置的确切数目。所以,我需要按以下顺序:
- (
- 数字
- )
- 空白
- 数字
- -
- 数字
这可能吗? 谢谢。
我是正则表达式的初学者,所以你对我的帮助将非常大。 我有这样的模式字符串:单个字符串中的两种交替模式的正则表达式
@"^\(\d\d\d\) \d\d\d-\d\d\d\d$"
仅在该格式相匹配的电话号码:(555)555-5555 但我真正需要的,是应遵循的顺序,而不是角色和位置的确切数目。所以,我需要按以下顺序:
这可能吗? 谢谢。
使用+
而不是固定数目的字符后?
@"^\(\d+\) \d+-\d+$"
感谢你也为代码和解释...今天我有一个快速教训:) – dex 2011-04-27 18:50:50
如果你不关心有多少数字是区号,或数字,你可以使用这个:
^\s*\(\s*\d+\s*\)\s*\d+\s*-\s*\d+\s*$
这允许围绕圆括号和短划线以及数据的开始和结束处的任何空白空间(包括无空格)。
如果你在乎多少个数字,例如使用\d{1,3}
而不是\d+
。这允许在一个地方1-3个数字。
感谢您的答复 – dex 2011-04-27 18:51:24
感谢您的代码和解释 – dex 2011-04-27 18:50:06