3

のような文字列がいくつかあるFoo3,5barFoo14,5barします。Foo23,42bar

Java Regex を使用して、コンマに続く 2 番目の数字とコンマを削除したいと考えています。

これまでのところ、正規表現としてString.replaceAll("(?<=Foo\d{1,2}),\d{1,2}", "")を使用してみましたが、機能していません。(?<=Foo\d{1,2}),\d{1,2}

4

4 に答える 4

1
str = str.replaceFirst(",\\d+$")
于 2013-04-18T21:46:58.220 に答える
1

String#replaceAll正規表現をサポートする使用:

String str = "Foo3,4HelloFoo5,3World";
str = str.replaceAll("(\\d),\\d+", "$1"); // Foo3HelloFoo5World

または、一致をカンマの後の最大 2 桁に制限する場合は、次を使用します。

str = str.replaceAll("(\\d),\\d{1,2}", "$1"); // Foo3HelloFoo5World

ライブデモ: http://ideone.com/5P1guJ

于 2013-04-18T21:47:18.043 に答える
0

Integer.valueOf(str.substring(string.lastIndexOf(",")+1)); はどうですか? 正規表現は必要ですか?

于 2013-04-18T21:47:04.393 に答える