1

我有一个接收字符串的 Javascript 函数。该字符串中可能包含 URL,有或没有 http:// 或 http/s:

示例字符串:

This is an example string with www.cnn.com and http://microsoft.com"

我的目的是获取该字符串并为 URL 注入锚标记,以便在将它们作为 HTML 注入到 html 文档时可以单击它们。

有什么我可以使用的吗?一些jQuery函数?

4

2 回答 2

2

没有本机 jQuery 函数,但正则表达式可以做到这一点

让我给你指出这篇博文,它将帮助你入门。它拥有的是一个正则表达式(可能看起来相当复杂和复杂,但并没有那么多),它可以检测字符串中的链接和电子邮件,因此您将能够找到它们并将它们替换为指向提取的 URL 的链接。

也许Stackoverflow 自己的 Jeff Atwood 已经发布了一个更好的表达方式(我知道我过去使用过)。他还非常详细地描述了整个 URL 情况,因此您可以决定这是否适用于您的问题以及适用程度。

于 2012-08-24T21:56:05.370 回答
0

如果仍然需要正则表达式:

/((www|http:\/\/)\S*)/ig


这匹配www.cnn.comhttp://www.microsoft.com来自以下示例:

This is an example string with www.cnn.com and http://www.microsoft.com

如果您使用<a href="$1">$1</a>替换,您将获得:

<a href="www.cnn.com">www.cnn.com</a>
<a href="http://www.microsoft.com">http://www.microsoft.com</a>


请记住,此正则表达式不会验证 url 地址。它只是搜索wwworhttp://然后获取之后的所有内容,直到出现空格

于 2012-08-24T22:16:10.217 回答