2016-03-31 9 views
0

存在しないとき、私はそれがで終わっていないときconsearch.text値が「KAU」 残念ながらで終わる場合正常に動作します。このは取得エラー、text.matchエラーは結果が

if (consearch.text.match(/kau$/).length >= 0) 
{ 
trace("test"); 
} 

ようなコードを持っています"カウ"私は1009エラーを取得

私は何かが不足していますか?わからない、なぜその私は、このエラーを与えて

+0

あなたは何を達成しようとしていますか?代わりにString.contains(String)を使用することを検討しましたか? – DodgerThud

+0

私は、入力テキストの最後にのみ "kau"というフレーズを見つける必要があります。とにかくString.containsで文字列の末尾のみを検索することはわかりません – Koden

+0

[これを試してください](https:// github .com/as3/as3-utils/blob/master/src/utils/string/endsWith.as) – DodgerThud

答えて

2

あなたがして、パッケージを使用し、このようにそれを使用する方法を知らない場合、これは@DodgerThudが示唆コードリンクの一部であり、

function endsWith(input:String, suffix:String):Boolean { 
    return (suffix == input.substring(input.length - suffix.length)); 
} 
if (endsWith(consearch.text,"kau")) 
{ 
    trace("test"); 
} 
1

私はあなたが得たことを知っています答えが、私はあなたがそのエラーを持っている理由を説明しようとするでしょうか?

String.match()は、指定されたパターン(/kau$/)に一致する文字列内の少なくとも1つのサブストリング(consearch.text)がある場合にのみそれ以外の場合は、ヌルを返すだ配列を返し、それはなぜそのエラーだからだから、あなたがそのエラーを得ましたあなたのテキストの末尾にkauが含まれていない場合、発射されます。

あなたは常にRegExpを使用する場合は、例えば、このようにそれを行うことができます助けることができる

if (/kau$/.test(consearch.text)) 
{ 
    trace('test'); 
} 

希望。

関連する問題