2010-11-03 49 views
0

什么是正则表达式验证文本框以允许“美国社会安全号码”以及使用正则表达式验证程序的文本“ - - ”。asp.net中的正则表达式验证程序

+1

谷歌搜索“美国社会安全号码正则表达式”返回很多匹配... – 2010-11-03 12:30:40

+0

另外我需要文本框来验证默认的“ - - ”文本也。 – subash 2010-11-03 12:39:54

回答

0

(更新:谷歌搜索后,似乎有一些要求,如:前三位数字必须是001 - 772.所以我建议你使用Google上的信息,因为它已经提供了完整的教程, 。下面的信息只是一个通用的形式)。

不知道asp.net使用不同的正则表达式语法,但SSN的一般正则表达式是

/^\d{3}-\d{2}-\d{4}$/ 

您可能需要改变它的asp.net。

^用于字符串的开头,$用于结尾,\d用于单个数字。 {3}意味着它需要重复3次。

+0

数字的权利,但不匹配' - -' – Toto 2010-11-03 12:34:18

+0

人们并不总是包含'-',即使他们这样做,他们偶尔会以不同的方式放置它们;例如'NNN-NNN-NNN'。 – tchrist 2010-11-03 12:34:22

+0

如果你想要“ - ”我会建议在页面上有三个三位数的部分,并在它们之间放置一个。这样,用户不能做什么 - 你不期望 – 2010-11-03 12:38:23

1

ASP.net的正则表达式验证器控件具有美国社会安全号码作为可选项。

+0

另外我需要文本框来验证默认的“ - - ”文本也 – subash 2010-11-03 12:48:19

+0

,说很多关于美国为中心的性质的ASP。我敢打赌,它并没有与其他许多国家相当。 – Spudley 2010-11-03 13:15:43

0

使用RegexBuddy表明

\b(?!000)(?!666)(?:[0-6]\d{2}|7(?:[0-356]\d|7[012]))[- ](?!00)\d{2}[- ](?!0000)\d{4}\b 

为美国社会安全号码。与- -这个组合成一个.NET友好的字符串为您提供:

@"^(?:- -|(?!000)(?!666)(?:[0-6]\d{2}|7(?:[0-356]\d|7[012]))[- ](?!00)\d{2}[- ](?!0000)\d{4})$" 

你还想允许在- -串的变化?例如,更多的空间?