ここで私のニーズにほぼ合うものを見つけました
Integer.parseInt(s.replaceAll("[\\D]", ""))
しかし、これを変更して負の整数を取得する方法がわかりません。サンプル文字列は次のとおりです。
"some\\-2c.st"
「-2」を抽出する必要があります
残りを取り除くのではなく、整数を探します。
String str = "some\\-2c.st";
Pattern pattern = Pattern.compile("-?[0-9]+");
Matcher matcher = pattern.matcher(str);
if (matcher.find()) {
int value = Integer.parseInt(matcher.group());
System.out.println(value);
}
不要なものをすべて削除することも、必要なものを抽出することもできます。ここでは後者の方が適切なようです。正規表現を使用(-?\d+)
してそれを行うことができます。