好的,你好。只是有一个简单的问题要问。在基本术语中,我正在尝试在Flash和Actionscript中开发TextEditor,而我正在尝试做的是确定是否"addEventListener"
已输入到我的输入字段中。从那里我想改变区域的颜色"addEventListener"
,例如蓝色。
所以我只是想知道最基本的方法是什么
答案 0 :(得分:0)
首先,您需要找到该单词的所有实例,然后为它们设置文本格式。这样的事情:(假设您的文本输入称为Pusher
)
txt
答案 1 :(得分:0)
你可以使用RegExp类获取匹配和位置:
// change wholeText to a class variable or function param
var wholeText:String = "...addEventListener( Event...";
var pattern:RegExp = /addEventListener/g;
var result:Array = pattern.exec( wholeText );
while ( result != null )
{
trace( result.index, pattern.lastIndex, result );
result = pattern.exec( wholeText );
}
...要包含格式,你会......
var tf:TextFormat = new TextFormat( null, null, 0x0000ff );
var wholeText:String = "...addEventListener( Event...";
var pattern:RegExp = /addEventListener/g;
var result:Array = pattern.exec( wholeText );
while ( result != null )
{
wholeText.setTextFormat( tf, result.index, pattern.lastIndex );
result = pattern.exec( wholeText );
}
我没有对BadFeelingAbout这个方法进行性能检查。我将其作为一种更紧凑的解决方案提供。
当然,您可以轻松地进行功能化,更改
var pattern:RegExp = /addEventListener/g;
...到...
function colorizeString( findMe:String ) : void
{
// ....
var pattern:RegExp = new RegExp( findMe, "g" );
// ...
}
我把它留作区分大小写。如果您希望它不区分大小写,则将“g”更改为“gi”。