如何在输入上接受多于1个HTML5模式?

时间:2014-04-01 12:03:38

标签: html regex html5 validation pattern-matching

我正在制作一张表格,我必须得到书的ISB号码。 ISBN编号可以是9或13位长,我想用HTML5模式检查输入,但我要接受9或13个长数字。

如何用HTML5将其写下来?

2 个答案:

答案 0 :(得分:10)

pattern属性中,您可以使用正则表达式:

<input type="text" pattern="\d{9}|\d{13}">

所以这不是HTML5特有的,这是基本的正则表达式。 |表示替代方案。

答案 1 :(得分:0)

pattern属性基于正则表达式。 RegEx {}检查字符出现(在你的情况9和13中)。

您无法使用一个表达式和一个{}符号检查两个不同(非相邻)的长度。

您需要编写两个表达式:第一个检查11个字符,第二个检查15个字符。您可以使用某些条件链接这两个正则表达式。有些If-else-conditionality存在,但浏览器可能不支持。

示例:pattern =&#34; {9} | {13}&#34;