0

「http:www」がオプションの URL を検証しようとしているため、yahoo.com とhttp://www.yahoo.comは有効な URL である必要がありますが、次の正規表現を使用しても utl3 が有効なものになることはありません。 . どうすればこれを修正できますか??

function checkUrlTest(url){
            var urlregex = new RegExp("^(https?:\/\/www\.)?(^(https?:\/\/www\.)[0-9A-Za-z]+\.+[a-z]{2,5})");

            return urlregex.test(url);
        }
        url3 = "yahoo.com";
        url4 = "www.yahoo.com";

        alert(checkUrlTest(url3));
4

4 に答える 4

1

ただそれをチェックしてください。すべての問題が解決します。

var rgx = /^\s*(http\:\/\/)?([a-z\d\-]{1,63}\.)*[a-z\d\-]{1,255}\.[a-z]{2,6}\s*$/;
于 2015-04-08T11:43:52.707 に答える
1
(http://)?(www\.)?[A-Za-z0-9]+\.[a-z]{2,3}

この正規表現では、http://www.yahoo.comhttp://yahoo.com、および www.yahoo.com がすべて有効な URL です。

于 2013-04-25T10:21:33.387 に答える
0
function validateUrl(value)
{
    var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
    return regexp.test(value);
}

これを試していない場合:

(?i)\b((?:(?:[a-z][\w-]+:)?(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))
于 2013-04-25T10:13:06.677 に答える