相关疑难解决方法(0)

Javascript:从string(包括查询字符串)中提取URL并返回数组

我知道这已被问了一千次(道歉),但搜索SO /谷歌等我还没有得到一个确定的答案.

基本上,我需要一个JS函数,当传递一个字符串时,根据正则表达式识别和提取所有URL,返回所有找到的数组.例如:

function findUrls(searchText){
    var regex=???
    result= searchText.match(regex);
    if(result){return result;}else{return false;}
}
Run Code Online (Sandbox Code Playgroud)

该函数应该能够检测并返回任何潜在的URL.我知道这个(关闭括号等)的不良困难/问题,所以我觉得这个过程需要:

将string(searchText)拆分为不同的部分(开始/结束),其中任何一个都没有,空格或回车的任何一侧返回,导致不同的内容块,例如进行拆分.

对于由拆分产生的每个内容块,请查看它是否适合任何构造的URL的逻辑,即它是否包含紧跟在文本后面的句点(用于限定潜在URL的一个常量规则).

正则表达式应该查看句点是否紧跟其他文本后面,其中包含tld,目录结构和查询字符串允许的类型,并且前面是URL的允许类型的文本.

我知道可能会导致误报,但是任何返回的值都将通过调用URL本身进行检查,因此可以忽略.我发现的其他函数通常也不会返回URL查询字符串(如果存在).

因此,从一个文本块,该函数应该能够返回任何类型的URL,即使这意味着将will.i.am识别为有效的URL!

例如.http://www.google.com,google.com,www.google.com,http://google.com,ftp.google.com,https://开头等等,并与查询字符串及其派生的任何应该退回...

非常感谢,再次道歉,如果这在其他地方存在,但我的搜索没有返回它..

javascript url jquery parsing extract

7
推荐指数
2
解决办法
1万
查看次数

标签 统计

extract ×1

javascript ×1

jquery ×1

parsing ×1

url ×1