0
我想验证主机名(即x.y.z格式)。目前我使用下面的正则表达式,但它不起作用。Angularjs中的主机名验证
它接受x.y.z.a等我想限制它只接受x.y.z.有谁知道我该如何修复它?
/^([a-z0-9]+(-[a-z0-9]+)*\.)+([a-z]{2,12})$/i
我想验证主机名(即x.y.z格式)。目前我使用下面的正则表达式,但它不起作用。Angularjs中的主机名验证
它接受x.y.z.a等我想限制它只接受x.y.z.有谁知道我该如何修复它?
/^([a-z0-9]+(-[a-z0-9]+)*\.)+([a-z]{2,12})$/i
只是{1,2}
更换+
修改:
/^([a-z0-9]+(-[a-z0-9]+)*\.){1,2}([a-z]{2,12})$/i
而且,如果你不需要捕获组:如果您想要的是3份(XYZ)
/^(?:[a-z0-9]+(?:-[a-z0-9]+)*\.){1,2}[a-z]{2,12}$/i
,使用{2}
而不是{1,2}
/^(?:[a-z0-9]+(?:-[a-z0-9]+)*\.){2}[a-z]{2,12}$/i
这将做的工作。上述正则表达式将x.
格式仅匹配X.Y.Z格式
^([a-z0-9]\.){2}[a-z0-9]$
两次用x
底。
Thanks..it working – Harikrishnan 2014-08-29 08:05:04
@Harikrishnan:不客气。很高兴帮助。 – Toto 2014-08-29 08:09:49