我的HTML中有以下部分,
<input type="text" #version tabindex="1" class="form-control" id="version" name="version" placeholder="" [(ngModel)]="application.version"
required minlength="1" pattern="\d{1,3}|\d{1,3}.\d{1,4}|\d{1,3}.\d{1,4}.\d{1,4}">
基本上,我希望变量的模式符合以下3种模式之一:
然而似乎加入&#34; |&#34;在这里工作不起作用。错误的模式,如&#34; 1.abc.def&#34;仍将成功验证。有什么想法吗?
由于
答案 0 :(得分:0)
得到了答案。它的工作原理如下: ((\ d {1,3})|(\ d {1,3} \ d {1,4})|。。。(\ d {1,3} \ d {1,4} \ d {1 ,4}))
答案 1 :(得分:0)
这可以这样做:
这将匹配1.0, 1.0.0, 1.0.0
var str = "1.0.0";
if (/^\d{1,1}\.\d{1,1}\.\d{1,1}$/.test(str) || /^\d{1,1}\.\d{1,1}$/.test(str) || /^\d{1,1}$/.test(str)) {
alert("matched");
} else {
alert("not matched");
}
&#13;