我的代码看起来像这样得到一个错误,text.match错误时没有结果存在
if (consearch.text.match(/kau$/).length >= 0)
{
trace("test");
}
其工作正常,如果consearch.text值结尾“九” 不幸的是,当它不是结束“kau”我得到了1009错误
我错过了什么?不知道为什么它给我这个错误
我的代码看起来像这样得到一个错误,text.match错误时没有结果存在
if (consearch.text.match(/kau$/).length >= 0)
{
trace("test");
}
其工作正常,如果consearch.text值结尾“九” 不幸的是,当它不是结束“kau”我得到了1009错误
我错过了什么?不知道为什么它给我这个错误
如果你不知道如何使用包然后用它这样的,这是代码的链接@DodgerThud建议的一部分,
function endsWith(input:String, suffix:String):Boolean {
return (suffix == input.substring(input.length - suffix.length));
}
if (endsWith(consearch.text,"kau"))
{
trace("test");
}
我知道你有一个回答,但我会尽力解释你为什么得到这个错误?
所以你明白我的错误,因为String.match()
返回如果字符串中的至少一个子串(consearch.text
)指定的模式(/kau$/
)相匹配的阵列ONLY否则它返回空,这就是为什么这个错误当您的文本末尾不包含kau
时会被解雇。
如果你想一直使用RegExp
,你可以做这样的例子:
if (/kau$/.test(consearch.text))
{
trace('test');
}
希望能有所帮助。
你想完成什么?你有没有考虑过使用String.contains(String)呢? – DodgerThud
我只需要在输入文本的END处找到短语“kau”,但是我不知道用String.contains只搜索字符串的结尾 – Koden
[Give this a try](https:// github .com/as3/as3-utils/blob/master/src/utils/string/endsWith.as) – DodgerThud