問題

私はいくつかの開始テキストを使用して文字列から単語を読み取ろうとしています。例えば

文字列str = "Ads:234983 ABCD2987423 availabe"

上の例では、値は毎回変更されます。だから私はテキスト "ABCD"で始まる文字列を読みたい。すなわち(ABCD2987423)

注:余分なテキストが文字列に追加されることがあります。 したがって、この例ではインデックスは機能しません。

  ベストアンサー

正規表現を使って1つのライナーにString#replaceAllを使うことができます:

 String str = " Ads : 234983 ABCD2987423 available";
String text = str.replaceAll(".*\b(ABCD\w*)\b.*", "$1");
System.out.println(text);
 

これは印刷します:

 ABCD2987423
 

  同じタグがついた質問を見る

java