我需要找到一个可以验证网址的正则表达式,但不使用http://或https://即网址不应该由https://或http://组成,因为我会将其附加到我的网址中代码。
示例:
message.click=Click
message.here=here
<sapn th:text="#{message.click}"/> <a th:href="@{/here}" th:text="#{message.here}"></a>
我希望仅将字符串匹配为有效网址,而不应允许http://和https://。
www.google.com (valid)
https://www.google.com (invalid)
http://www.google.com (invalid)
master.sh (valid)
://master.sh (invalid)
jag.abcs.abcs (valid) // Edit
答案 0 :(得分:0)
console.log(/^([a-z]*.?[a-z]*.[a-z]*)$/.test('www.google.com'));
console.log(/^([a-z]*.?[a-z]*.[a-z]*)$/.test('http://www.google.com'));
console.log(/^([a-z]*.?[a-z]*.[a-z]*)$/.test('master.sh'));
console.log(/^([a-z]*.?[a-z]*.[a-z]*)$/.test('://master.sh'));
答案 1 :(得分:0)
^([A-Z0-9 - ]。+ \)*([A-Z0-9] +)(\ [A-Z] +){1,3} $
是你想要的。
https://regex101.com/r/CNcn11/1
<强>测试强>
<form method="post" action="/" onsubmit="return false;">
http://<input type="text" required pattern="^([a-z0-9-]+\.)*([a-z0-9]+)(\.[a-z]+){1,3}$">
<input type="submit" value="Submit">
<br><b>Note:</b> If you don't see a validation error, it passes.
</form>