【发布时间】:2012-02-15 20:23:23
【问题描述】:
我有一个社会安全号码的正则表达式。我有一个新要求,规定正则表达式应该只在识别出 5 个或更多时“匹配”。我已经尝试了几种排列,但我无法弄清楚这一点。
我的正则表达式:
((?!000|666|9\d{2})([0-8]\d{2}[- ]\d{2}[- ]\d{4}))
我试过了
((?!000|666|9\d{2})([0-8]\d{2}[- ]\d{2}[- ]\d{4})){5,}
这不起作用。有什么我想念的吗?
【问题讨论】:
-
当您说“匹配”时,您的意思是您希望它在“匹配”之前找到五个唯一的 SSN?对于捏造的数据,您能否提供一个可以使用的示例?
-
与@hexparrot 相同的 q 加上:如果是,这听起来更像是一个软件功能而不是正则表达式模式。
-
5 个或更多 SSN?所以你想在一个文本块/行中包含 5 个有效的 SSN?您可以这样做,但迭代 n 行文本的更简单表达式会更简单。 ...平行嘘的评论。
标签: regex