1
目前,我有以下的正则表达式替换URL到HTML超链接:正则表达式的URL超链接
msg = msg.replace(/(\b((https?|ftp|file):\/\/|www.)[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/gi, "<a href='out.php?u=$1'>$1</a>");
这将替换
http://www.stackoverflow.com
到
<a href='out.php?u=http://www.stackoverflow.com'>http://www.stackoverflow.com</a>
但现在我有一个问题。当我已经有超链接时,我不想将该超链接内的URL替换为新的超链接。
所以:
<a href='http://www.stackoverflow.com'>Stackoverflow</a>
绝不能成为:
<a href='<a href='out.php?u=http://www.stackoverflow.com'>http://www.stackoverflow.com</a>'>Stackoverflow</a>
是否有人知道我如何避免这种情况?
我认为这已经被回答了:http://stackoverflow.com/questions/37684/how-to-re-place-plain-urls-with-links –