どのようにStringTokenizerは内の単語を使って文(JAVA)をこぼしします

Tusharラバル:

私は著者の名前は言葉で区切られた文を、持っている「と」。私は「と」を削除し、代わりに&載せていきたいと思います。これを行うために迅速かつ簡単な方法はあります。私はスキャナとuseDelimiter()、StringTokenizerは、スプリットを試してみました。

これは私が(私は自分のコンピュータ上のファイルからこの情報を取得しています)に分割したいもの、たとえば次のとおりです。

author={J. Park and J. N. James and Q. Li and Y. Xu and W. Huang}, 

だから私は使用しました:

String author = nextLine.substring(nextLine.indexOf("{") + 1, nextLine.lastIndexOf("}"));

StringTokenizer st2 = new StringTokenizer(author, " and ");

while(st2.hasMoreTokens()){
      author += st2.nextToken() + " & ";
}

私が手にする出力は以下の通りであります:

J. Park and J. N. James and Q. Li and Y. Xu and W. HuangJ. & P & rk & J. & N. & J & mes & Q. & Li & Y. & Xu & W. & Hu & g & .

私は私が間違ってやっているものを全くわかりません。私はあきらめる前に、最後の夜2時間のためにこれをGoogleで検索しました。私は、しかし、誰成功し、使用してみました「[と]」、「と」、「^ [と] $」しています。

ジョニ:

使用replaceAll方法を。例えば:

String s = "J. Park and J. N. James and Q. Li and Y. Xu and W. Huang";
s = s.replaceAll("\\band\\b", "&"); // "J. Park & J. N. James & Q. Li & Y. Xu & W. Huang"

\b含ま名前があればという単語境界性を保証and(例えば、「バンド」)は、それが触れることはありません。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=345439&siteId=1