javascript - 如何从javascript中的段落中获取数组中的url

标签 javascript arrays url



我想在数组中获取 javascript 中段落或句子中可用的所有 url。例如检查下面的段落:

Please checkout http://stackoverflow.com. It has very cool logo https://d13yacurqjgara.cloudfront.net/users/1249/screenshots/2247671/stackoverflow.png.

从上面的字符串中,我们必须获取这两个url的数组。

解决方案1:解决方案1,我知道是用空格分割段落,迭代数组并一一检查 url 并将其插入 url 的数组中。但是,这是一个耗时的解决方案。

是否有更好的解决方案来找到它,或者上面的解决方案是最快且最好的解决方案?

谢谢。

最佳答案

这是您要找的吗?

var list = [];
var sentence = "Please checkout http://stackoverflow.com. It has very cool logo https://d13yacurqjgara.cloudfront.net/users/1249/screenshots/2247671/stackoverflow.png.";

var result = checkForURL(sentence);

function checkForURL(text) {
    var urlRegex = /(https?:\/\/[^\s]+)/g;
    return text.replace(urlRegex, function (url) {
        return '<a>' + url + '</a>';
    })
}
var number = result.split('<a>');

for (var i = 1; i < number.length; i++) {
        list.push(number[i].split(".</a>")[0]);             
}
alert(list);

关于javascript - 如何从javascript中的段落中获取数组中的url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41633348/

相关文章:

mysql - 将整数数组传递给 mysql 过程

php - 使用 htaccess 创建 SEO 友好的 url

php - 这个正则表达式在 codeigniter 的 uri 中不起作用

javascript - 如何使用允许 GET 的承载 token 来调整这个 axios 对象,以使用 POST 方法?

javascript - 为什么 Google Chrome 浏览器的 Math.random 数字生成器不是 *that* 随机数?

javascript - 为什么父级 onClick 在子级 onChange 之前触发

java - 检查乘法表数组

PHP等于foreach循环中的箭头运算符

带 URL 参数的 Java 启动

javascript - Jest 测试为 eventemitter 对象发出事件 (http)