输入模式验证 - 多个模式

时间:2015-08-17 10:28:49

标签: regex html5 validation input

我一直在HTML格式的表单中使用输入类型,并使用pattern属性来更好地验证数据输入。

有没有办法在单个输入类型中允许多个模式?

例如,我想同时允许[a-zA-Z]{1}\d{8}d{8}\[a-zA-Z]{1}

这将是我目前使用的输入之一,但正如你所看到的,我只有一种模式:

<input type="text" id="txtID" pattern="[a-zA-Z]{1}\d{8}" required/>

由于我对RegEx的了解有限,可能有一种方法可以使用允许这两种模式的RegEx公式,但我真的不知道。

1 个答案:

答案 0 :(得分:2)

您可以使用交替运算符|来允许其他模式:

[a-zA-Z]\d{8}|d{8}[a-zA-Z]

请注意,您无需添加任何锚点或分组,请参阅pattern documentation

  

这意味着用于此属性的正则表达式语言与JavaScript中使用的正则表达式语言相同,只是模式属性与整个值匹配,而不仅仅是任何子集(有点像它暗示{{1} }在模式的开头和结尾的^(?: