Regex jquery中EIN编号和SSN编号格式的正则表达式
对于jquery验证,我需要用于SSN编号格式和EIN编号格式的正则表达式 EIN号码,如52-4352452 SSN编号,如555-55-5555,适用于SSN: 对于EIN:Regex jquery中EIN编号和SSN编号格式的正则表达式,regex,jquery-validate,Regex,Jquery Validate,对于jquery验证,我需要用于SSN编号格式和EIN编号格式的正则表达式 EIN号码,如52-4352452 SSN编号,如555-55-5555,适用于SSN: 对于EIN: 对于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[
对于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}$/
但是,请注意,如果添加了新的前缀,这将不是最新的。我们的需要
- 没有前缀限制
- ,连字符可选
- 使用连字符,可接受的格式:
00-0000000
var patternEIN=/^\d{2}\-?\d{7}$/;
patternEIN.test($('#ein1').val());//失败
patternEIN.test($('#ein2').val());//通过
patternEIN.test($('#ein3').val());//通过
由于前面的所有答案都将此问题视为两个独立的问题,因此我将必要的正则表达式组合为一个正则表达式
这将适用于SSN和EIN,无论是否使用连字符进行格式化
/(^\d{9})|(^\d{3}-\d{2}-\d{4}$)|(^[1-9]\d?-\d{7}$)/
^\d{2}\-?\d{7}$
<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>