Jquery中的EIN编号和SSN编号格式的正则表达式

时间:2010-11-22 05:01:11

标签: regex jquery-validate

对于jquery验证,我需要regex用于SSN数字格式和EIN数字格式

EIN号码如52-4352452

SSN号码如555-55-5555

4 个答案:

答案 0 :(得分:18)

答案 1 :(得分:5)

我们的需求

  • 没有前缀限制。
  • 9-digit EIN,连字符可选。
  • 使用连字符,格式可接受:00-0000000

正则表达式

^\d{2}\-?\d{7}$

使用JavaScript / jQuery

进行演示
<input type="text" id="ein1" value="0112345-67" />
<input type="text" id="ein2" value="01-1234567" />
<input type="text" id="ein3" value="011234567" />

<script type="text/javascript">
    var patternEIN = /^\d{2}\-?\d{7}$/;

    patternEIN.test($('#ein1').val()); // fail
    patternEIN.test($('#ein2').val()); // pass
    patternEIN.test($('#ein3').val()); // pass
</script>

答案 2 :(得分:3)

对于EIN,如果有效,则返回true

/^(0[1-9]|[1-9]\d)-\d{7}$/.test($('#your-ein-field-id').val())

要将其限制为实际前缀,请改为使用此正则表达式:

/^(0[1-6]||1[0-6]|2[0-7]|[35]\d|[468][0-8]|7[1-7]|9[0-58-9])-\d{7}$/

但请注意,如果添加了新的前缀,则不会更新。

答案 3 :(得分:0)

由于所有先前的答案都将其视为两个独立的问题,因此我将必要的正则表达式组合为一个正则表达式。

这对于SSN和EIN均适用,无论是使用连字符还是不使用连字符进行格式化。

/(^\d{9})|(^\d{3}-\d{2}-\d{4}$)|(^[1-9]\d?-\d{7}$)/