0

Androidで文字列を配列と比較することは可能ですか? これは、私が論文のために開発している Porter Stemmer を使用した辞書アプリケーション用です。

たとえば、入力単語は PROCESSES (char 配列内に配置) であり、入力に「s」、「es」、または「sses」が含まれているかどうかをスキャンしてから削除したいと思います。

文字ごとに比較することを考えましたが、それは面倒なコーディングになると思います。次のように入力単語を比較する簡単な方法はありますか:

If ( inputWord has string "es" )
 {
   delete "es
 }

example input: PROCESSES
example output: PROCESS
4

3 に答える 3

1

String.contains および String.replaceAll 機能を使用できます。

//if (inputWord.contains("es")) {
    inputWord.replaceAll("es", "");
//}

if ステートメントは必要ありません。直接置換することもできます。文字列が見つからない場合、何もしません。

于 2013-01-07T09:05:23.347 に答える
1
if(inputWord.contains(checkWord))
{
    int i = inputWord.indexOf(checkWord);
    StringBuilder sb = new StringBuilder(inputWord);
    sb = sb.delete(i, i+(checkWord.length()));
    inputWord = sb.toString();
}

値を文字列に格納します。より簡単になります。このコードがお役に立てば幸いです。複数の単語をチェックする必要がある場合は、すべての単語を配列に格納し、このスニペットを for ループ内に配置します。

于 2013-01-07T09:41:19.563 に答える
0

おそらく私はあなたの質問を理解していませんが、文字列char[]を使用して変換することができます

char[] data = {'a', 'b', 'c'};
String str = new String(data);

String str = "abc";
char[] data = toCharArray();

indexOf(String)またはcontains(String )を使用して、サブ文字列が含まれているかどうかを確認できます。

于 2013-01-07T09:07:51.663 に答える