我需要3种不同的正则表达式
如果仅使用一个正则表达式返回用户名并且也是真的,那么我可以使用一个来匹配,一个将删除'D'或'@'或'RT',谢谢你
(fyi,我使用AS3来做这件事)
答案 0 :(得分:3)
D patrickgates
使用^D (\w+)
捕获'patrickgates'@patrickgates hello, world
使用^@(\w+)
捕获'patrickgates'RT @patrickgates
使用`^ RT @(\ w +)来捕捉'patrickgates'如果您希望单个正则表达式从所有三个示例中捕获patrickgates
:
^(?:D |@|RT @)(\w+)
答案 1 :(得分:0)
public function convertTwitterMsg (o:Object):void {
trace('New Tweet: ' + o);
var original:String = o.title;
_tweet = original.replace(/(^|\s)@(\w+)/g, "$1@<a href=\"http://www.twitter.com/$2\">$2</a>");
_final = _tweet.replace(/(^|\s)#(\w+)/g, "$1#<a href=\"http://search.twitter.com/search?q=%23$2\">$2</a>");
ta.htmlText = _final;
}
ta应该是你的mx:TextArea的id,你也可以使用spark,但它改变了你在spark中设置文本样式的方式。 _tweet是一个字符串
我复制粘贴功能,使用方便。