<input type="text" id="url" name="url" pattern="/ ^(http:\/\/www\.|https:\/\/www\.|http:\/\/|https:\/\/)(amazon)|(flipkart)+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(:[0-9]{1,5})?(\/.*)?$ /" required />
显示的是我的输入。但我无法匹配任何输入。它应该正确匹配以http://flipkart.com或http://amazon.com开头的任何网站。我检查了rubular。表达是正确的。哪里错了。请帮忙 。谢谢./
答案 0 :(得分:0)
请你试试以下,它对我有用
<input type="text" id="url" name="url" pattern="(https:[/][/]|http:[/][/]|www.)[amazon|flipkart]+\.[a-zA-Z]{2,3}(:[a-zA-Z0-9]*)?/?([a-zA-Z0-9\-\._\?\,\'/\\\+&%\$#\=~])*$" required />
答案 1 :(得分:0)
您的问题来自:(amazon)|(flipkart)+
,您需要对这两个字符串进行分组并删除多余的+
。
(amazon|flipkart)
你也可以将正则表达式减少到:
(https?://(?:www\.)?)(amazon|flipkart)([-.][a-z0-9]+)*\.[a-z]{2,}(:[0-9]{1,5})?(/.*)?