工作例如:http://alpha.jsfiddle.net/gTpWv/JavaScript的转换纯文本链接&&表情
的方法均独立工作,但一旦正则表达式的表情得到原始的HTML代码来处理,事情变得丑陋。
K = K.replace(/\b((http:\/\/)|(www\.))[^ ]{5,}/g, function (x) {
var b = x;
if (b.indexOf("www") == 0) {
b = "http://" + b
}
return '<a href="' + b + '" target="_blank">' + x + "</a>"
// K is now /"Testing <a href="http://www.google.com," target="_blank">http://www.google.com,</a> :D, ^^"/
for (var d = 0; d < smiliesArray.length; d++) {
K = K.replace(new RegExp(smiliesArray[d][0], "g"), '<img src="' + smiliesArray[d][1] + '">');
}
// K is now Testing <a href="http%3Cimg%20src=" http:="" i.imgur.com="" mvk87.gif"="">/www.google.com," target="_blank">http<img src="http://i.imgur.com/MVk87.gif">/www.google.com,</a> <img src="http%3Cimg%20src=" http:="" i.imgur.com="" mvk87.gif"="">/i.imgur.com/7JJNL.gif">, <img src="http%3Cimg%20src=" http:="" i.imgur.com="" mvk87.gif"="">/i.imgur.com/vRgA3.gif">
我发现regexp claiming to solve this issue,但它插入到正则表达式:http://alpha.jsfiddle.net/gTpWv/1/回报什么。
我也发现按照this过程有趣的想法,但我会留下两条分开的线,一个带有链接,另一个带有表情符号,并且需要另一个正则表达式才能将一个注入另一个。
我不确定我应该干预更好的正则表达式还是尝试找到解决此问题的另一种方法。
非常感谢你,你已经完成了一个非常有趣的方法,也是一个非常干净的方法! – User2121315 2012-02-09 17:48:29