我的代碼看起來像這樣得到一個錯誤,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