从字符串中提取链接和Twitter回复

时间:2010-09-16 00:38:00

标签: actionscript-3 string

我从Twitter获取一个字符串到我的Actionscript中,这是一个未格式化的字符串。我希望能够从字符串中提取任何链接和/或任何@replies,然后在htmlText中显示它。

到目前为止,我有这个

var txt:String = "This is just some text http://www.thisisawebsite.com and some more text via @sumTwitter";

var twitterText:String = txt.slice(txt.indexOf("@"),txt.indexOf(" ",txt.indexOf("@")));

var urlText:String = txt.slice(txt.indexOf("http"),txt.indexOf(" ",txt.indexOf("http")));

var newURL:String = ""+urlText+"";

var arr:Array = txt.split(urlText);

var newString:String = arr[0] + newURL + arr[1];

var txtField:TextField = new TextField();
txtField.width = 500;
txtField.htmlText = newString;
addChild(txtField);

这适用于提取带有空格的链接。但是,如果像@sumTwitter一样,它会在字符串的末尾完成。而且,如果有多个链接或@,是将它放入while循环的最佳方法呢?

1 个答案:

答案 0 :(得分:2)

我认为正则表达式是您想要的最佳选择。

检查Grant Skinner's RegExr。你可以在那里编写和测试你自己的RegExp,这非常方便。但是,您也可以找到由不同用户创建的许多有用的即用型正则表达式。查看右侧面板中的“社区”选项卡。在那里,搜索一些有意义的关键字,如“twitter”和“url”,你会得到很多选项。

例如,

抓住网址:

http://regexr.com?2s5m4

捕获Twitter用户名:

http://regexr.com?2s5m7