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