我需要验证一个字符串不能包含多个URL。字符串的最大长度可能是500个字符。有没有一种有效的方法可以以较少的时间复杂度来计算URL数量?
谢谢。

这是我目前尝试过的方法:

var count = 0;
var urlArray = urlstring.split(" ");

$.each( urlArray, function( i, val ) {
    if(val != "") {
        var flag = val.match(/^((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=‌​&%@!\-\/]))?$/);

        if(flag) {
            count++;
        }
    }
});

最佳答案

解决方案:

function countNumberOfUrl(urlstring)
{
   var number = 0;
   var count = urlstring.match(/\http:|https:/g).length;
   if(count)
   {
     number = count;
   }
   return number;
}

关于javascript - jQuery URL验证数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26442603/

10-12 12:38
查看更多