2012-05-24 50 views
0

我有一个名为MESSAGE的字符串,它取决于人们的说法。ActionScript之间替换字符串?

有没有一种方法可以让MESSAGE替换字符串内部的字符串内容?

例如,如果MESSAGE等于“嘿家伙[彩虹]看我的真棒彩虹文字[/彩虹]不是很酷吗?”那我该如何去除“[彩虹]”和“[/彩虹]”,并用“看看我真棒彩虹文字”来代替“[彩虹]看我真棒彩虹文字[/彩虹]”部分一个名为RAINBOWTEXT的字符串?

我需要这个的原因是因为我希望基于Flash的聊天中的用户能够制作彩虹文本,但我使用的方法需要在客户端执行此操作。我确实有一个PHP版本可以将文本提交到数据库中,但由于数据量过大,它会将信息截断。每个角色的两侧都有一个<font color="#123456">和一个</font>,所以消息超长。

如果我可以替换由[彩虹]和[/彩虹]指定的内部部分,我可以让每个人的客户端在取得该消息后将其替换。在数据库中,它会有“嘿家伙[彩虹]看我的真棒彩虹文字[/彩虹]不是很酷吗?”但在聊天中它会有“嘿家伙看我的真棒彩虹文本是不是很酷?”与实际的文本rainbowfied。

回答

1

这听起来像是一个regular expressionreplace()方法的工作。仔细研究一下表达式,这些表达式将查找并替换HTML标记的内容,并且您应该能够根据需求调整所找到的内容。 JavaScript的示例也应该是有效的,因为ActionScript和JavaScript都遵循正则表达式的ECMAScript标准。

一旦你找到了一些东西,你可以用这个handy tool来测试ActionScript 3.0正则表达式。

+0

这是我到目前为止。 http://pastebin.com/raw.php?i=Ynw5kTzL但是,它只适用于一个彩虹实例。我的意思是我可以像“只是测试[/彩虹]东西[彩虹]”而行之有效,但如果我这样做“只是测试彩虹东西哦看看彩虹另一个测试[/彩虹] tehe“它不会再次出现彩虹。知道如何修改我的脚本,它会? – Dav

+0

@刚才的工作,但我会回家看看。 –

+0

看起来你在另一个问题上得到了一些帮助,所以我可以坚持下来;)。如果它让你走向正确的方向,你应该接受这个答案。 –