我已经在表单HTML中输入了内容,并且我想控制键入的年份必须采用以下格式:
YYYY或YYYY / YYYY / YYYY / YYYY / YYYY ... ect
我的模式是:
第一次测试:
pattern="^((19)\d{2}\/|(20)[0-1][0-9]\/)+"
第二项测试:
pattern="^((19)\d{2}\/?|(20)[0-1][0-9]\/?)+"
我希望以2018/2019/1999为例,但我必须输入2018/2019/1999 /进行第一次测试
但是如果我用第二个测试:
这种形式可以接受,但我不想被接受:20182019/1999
答案 0 :(得分:1)
如果要简短,请使用单词边界\b
:
pattern="(\b/?(19\d\d|20[01]\d))+"
注意:
^
和$
是隐式的,无需编写它们。/
不是特殊字符,无需转义。[0-1]
没有意义,因为0和1之间没有任何关系。答案 1 :(得分:0)
第二个正则表达式应为
pattern="^((19)\d{2}\/|(20)[0-1][0-9]\/?)+"
代替
pattern="^((19)\d{2}\/?|(20)[0-1][0-9]\/)+"
正斜杠后的问号表示匹配是可选的。
答案 2 :(得分:0)
这是我想要解决的问题:
^((19)\d{2}\/|(20)[0-1][0-9]\/|(19)\d{2}$|(20)[0-1][0-9]$)+
答案 3 :(得分:0)
使用此:
pinMode(D15, OUTPUT);
说明:
pattern="^(?:19\d{2/|20[0-1][0-9])(?:\/(?:19\d{2/|20[0-1][0-9]))*"