[英]Can someone explain what this REGEX is doing? [duplicate]
这个问题在这里已经有了答案:
所以我有一个 function 返回真/假,具体取决于字符串参数是否是有效的 URL。 问题是我不太了解 REGEX。 我知道这个 function 对于像“test”这样的字符串会返回 true,而对于“www.test.com”会返回 false,但我想了解这个 REGEX 正在检查的具体内容。 谁能给我解释一下?
function isInvalidUrl(value) {
// REGEX to determine that string is in the format of a URL
const URL_REGEX = /^\/[a-z0-9]+$|[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi;
return value && !URL_REGEX.test(value);
}
这是@phuzi 上面提到的 Debuggex 可视化:
^\/[a-z0-9]+$|[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?
正如您在演示中看到的那样,这不是最有用的正则表达式,因为它将asasest.com..sx.asxasx....asx
作为有效的 URL 传递。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.