我正在尝试将字符串中的 url 转换为链接,条件是 url 必须与我正在使用的域相同。我该怎么做?
我的域名是 http://www.domain.com
str = "This is a www.domain.com text with url. This is another url: www.domain2.com. This is a part of a url: http://domain.com/foo.php. This is another link: https://stackoverflow.com/questions/ask. Another link: domain.com/bar.php";
我想要的是:
- www.domain.com 将更改为
<a href='www.domain.com'>domain.com</a>
- www.domain2.com 保持不变。
- > http://domain.com/foo.php改为
<a href='http://domain.com/foo.php'>/foo.php</a>
. - > https://stackoverflow.com/questions/ask保持不变。
- domain.com/bar.php 改为
<a href='domain.com/bar.php'>/bar.php</a>
我如何使用 javascript 执行此操作?
最佳答案
应该这样做:
str.replace(/(?:(?:http:\/\/)?(?:www\.)?(domain\.com))(\/[a-zA-Z]+\.php)?/g,
function(a,b,c) {
return '<a href="'+a+'">'+(c ? c : b)+'</a>';
});
这是工作 fiddle http://jsfiddle.net/URLzx/1/ .
关于javascript - 用条件替换字符串中的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7673658/