-5

プロジェクト内のものを検索するためのコードを作成しようとしていますが、文字列を単語に分割し、単語を検索トークンに分割する必要があります。たとえば、「how are you」が私の文字列の場合、how、are、you、および h、ho、how、a、ar、are、y、yo、you に分割したいと思います。誰かがJavaでこれを行う方法を説明できますか?

4

3 に答える 3

1

使用する必要があるのは StringTokenizer だけです。(または BreakIterator)

  Multiset<String> myList = new HashMultiset.create() //Multiset is part of Google Guava Library

    StringTokenizer st = new StringTokenizer("How are you");
         while (st.hasMoreTokens()) {
        myList.add(st.nextToken());

         }


//Now check if multiset already contains it : 

if(myList.contains("how"){
//do whatever you want.
}
于 2013-05-21T08:46:42.773 に答える
1

String.split() は理想的な選択です。これには正規表現が必要です。これを使用して、最も単純なパターンから最も複雑なパターンまですべてを定義できます。

Java API Doc に従って -

StringTokenizer は、新しいコードでの使用は推奨されていませんが、互換性のために保持されているレガシー クラスです。この機能が必要な場合は、代わりに String の split メソッドまたは java.util.regex パッケージを使用することをお勧めします。

于 2013-05-21T08:56:46.877 に答える
0

StringTokenizer を使用してトークンに分割し、それらを変数/配列/リストに読み取り、必要に応じて使用します。

于 2013-05-21T08:47:53.050 に答える