使用JavaScript

时间:2017-02-08 21:51:31

标签: javascript php html url

我正在研究链接预览脚本,例如fb使用它。用户创建可能包含链接的帖子。在每个keyup上我测试最后一个键是否是空格键,如果是这样的话我运行我的函数:

function link_preview(event)
{
    var replyText = $("#answer_two").val();

    if(event.keyCode == 32)
    {
        var match = /^(?:[a-z]*?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/i.exec(replyText);

        if(match!="")
        {

            var preview = match[0];
        }
    }
}

因此用户键入包含链接的文本。检测到链接时,将显示预览,其中包含从此URL获取的信息。用户可以选择关闭此预览并添加另一个链接,这正是我的问题开始的地方。我无法访问第二个网址而忽略第一个网址。如果将第三个网址添加到组合中,所有这一切变得更加复杂。 有没有人建议如何工作?

1 个答案:

答案 0 :(得分:1)

您是否尝试过将全局参数添加到" g"的正则表达式中?在你旁边"我"在你的正则表达式的末尾所以它看起来像:

/^(?:[a-z]*?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/gi

在这种情况下,您将在需要循环的字符串中获得多个匹配项。

实际修复时的参考:http://jsfiddle.net/ps1rf1uw

相关问题