日期:2014-05-16  浏览次数:20454 次

牛人不牛人的都可以来,学习的好机会!关于正则替换正则问题
有个输入框内容如下: 你好@karso 我们一起吃饭去。叫上@234金山寺 @事事  

说白了就是类似微博里的内容谁@了谁。现在想用JS 的正则表达式进行替换替换的内容如下:
你好<a href='tt.com/n/'+escape('karso')'>@karso</a> 我们一起吃饭去。叫上<a href='tt.com/n/'+escape('234')>@234</a>金山寺 <a href='tt.com/n/'+escape('事事')>@事事</a>  

不知道 大家看明白了吗? 是把(@\w+ ) 这个替换成 href='tt.com/n/'+escape('+(\w)+')>(@\w+ )</a>
可是不知道怎么写。求高人帮助!!
正则 JavaScript 微博

------解决方案--------------------

var str = '你好@karso 我们一起吃饭去。叫上@234 金山寺 @事事 ';
str = str.replace(/@(.*?) /g,function(patter,match){
  return '<a href="tt.com/n/'+escape(match)+'>@'+match+'</a>';  
});
alert(str);