javascript - 解析文本以格式化内容中的 URL 并缩短 URL

标签 javascript

我想将以下文本解析为带有 anchor 标记的格式化 URL:

something is wrong with http://www.gbin1.com/index.html,  but cannot find the reason in http://www.google.com

如何将上面的文本 URL 替换为 <a href="url">url</a>并使用 JavaScript 缩短它,如下所示:

something is wrong with <a href="http://www.gbin1.com/index.html">gbin1.com</a>,  but cannot find the reason in <a href="http://www.gbin1.com">google.com</a>

最佳答案

检查此解决方案。

var x = "something is wrong with http://www.gbin1.com/index.html,  but cannot find the reason in http://www.google.com";
var expression = /[-a-zA-Z0-9@:%_\+.~#?&//=]{2,256}\.[a-z]{2,4}\b(\/[-a-zA-Z0-9@:%_\+.~#?&//=]*)?/gi;
var regex = new RegExp(expression);
var split = x.split(" ");
for(var i=0; i< split.length; i++){
    if(split[i].match(regex)){
        var text = split[i].split(".").slice(1).join(".").split("/")[0];

        split[i] = '<a href=\"' +split[i]+'\">'+text+'</a>';
    }
}
console.log(split.join(" "));

http://jsfiddle.net/4JGY7/

关于javascript - 解析文本以格式化内容中的 URL 并缩短 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11297501/

相关文章:

javascript - 如何将 HTTP 方法传递给 window.open

javascript - 模态未启动 jquery

javascript - 解析.com : The server returned an invalid response

javascript - 如何从另一个类访问一个类的方法?

javascript - 如何根据屏幕尺寸调整横幅

javascript - 带有关闭选项的粘性框

javascript - 滑动图片和文字

JavaScript 单行 'if' 语句 - 最佳语法,这个替代方案?

java - Spring/Hibernate 响应中的属性为空

javascript - 使用 scryRenderedComponentsWithType 或 findRenderedComponentWithType