首页 > 解决方案 > JS URL 正则表达式,只允许 url 和空字符串

问题描述

我有以下正则表达式:

var regex = /^(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g;

function test() {
    alert(regex.test(document.getElementById("myinput").value));
}

我想允许 url 或空字符串。 请正则表达式解决方案
在这种情况下如何允许为空?
https://jsfiddle.net/6kptovwc/2/
谢谢

标签: javascriptregexurl-validation

解决方案


^$|pattern
var regex = /^$|(http(s)?:\/\/.)?(www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)/g;

推荐阅读