我想验证域名(仅限),该域名将被输入文本框。
接受标准:
abc.com
abc.in
abc.pqr.com
abc.com/xyz
abc.com/xyz/pqr
no.matter.how-many.domain-name.com/anything
拒绝:
http://example.com
(anything preceding with http:// or https:// or ftp://)
abc.com////
abc.com///xyz
.....likewise
我已尝试过这个:
^[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.?)^[a-z0-9]?$/i
但它不需要:abc.com/xyz或abc.com/ (这是我的验收标准)
(之后)也尝试了这个:
/([\w-]+\.)+[\w-]+[.com|.in|.org]+(\[\?%&=]*)?/
这克服了上述问题,但它也像:http://example.com
(这是我的拒绝标准)
我对正则表达式并不擅长,因此,上述场景的正则表达式将是什么。 (在现有代码中我需要进行任何修改吗?)
答案 0 :(得分:0)
这解决了我的问题:
^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})(\/(?:[\/\w \.-]*)*\/?)?([\/?#].*)?
This Article有帮助。
修改:不工作。同时接受..com
和example.com/////abc
答案 1 :(得分:0)
答案 2 :(得分:-1)