读书人

替换文本中网址并加下A标签的有关问

发布时间: 2013-01-04 10:04:13 作者: rapoo

替换文本中网址,并加上A标签的问题
比如有如下文本:
<img src="http://www.aaa.com/123.jpg"/>中中中中中 http://www.baidu.com <a href="http://www.china.com">asdfasdf</a>

需要把http://www.baidu.com 这个变成<a href="http://www.baidu.com" target="blank">www.baidu.com</a>

只替换非标签的网址,而标签内的不发生改变

找了一个:

srcString.replace(/((https?|ftp|file):\/\/[-a-zA-Z0-9+&@#\/%?=~_|!:,.;]*)/g,"<a target='blank' href=\"$1\">$1</a>")

这个正则会把所有的网址都替换掉


在线等~~~~
[解决办法]


var str = '<a href="http://www.china.com">asdfasdf</a>';
var end = str.replace(/(<a\s?href=)(.*)>(.*)(<\/a>)/ig, '$1' + '"http://www.baidu.com">http://www.baidu.com$4');
console.log(end);

[解决办法]
<script language="javascript" type="text/javascript">
var str = '<img src="http://www.aaa.com/123.jpg"/>中中中中中 http://www.baidu.com <a href="http://www.china.com">asdfasdf</a>';
str= str.replace(/(>[^>]*?)(https?:\/\/((?!<)\S)+)/,'$1<a href="$2">$2</a>');
alert(str);
</script>

读书人网 >JavaScript

热点推荐