楽しいです:
私は、文字列、例のすべての数字を取得する必要があります。
"a: 1 | b=2 ; c=3.2 / d=4,2"
私はこの結果を取得したいです:
- 1
- 2
- 3.2
- 4,2
だから、私は、Javaで正規表現でそれを言うのか分かりません。
実は、私はこれを持っています:
(?<=\D)(?=\d)|(?<=\d)(?=\D)
彼は、文字と数字を分割する(ただし、二重の値が尊重されていない)、その結果は次のとおりです。
- 1
- 2
- 3
- 2(問題)
- 4
- 2(問題)
手伝って頂けますか ?
ありがとう
アービンド・クマールのAvinash:
次のようにあなたはそれを行うことができます。
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Main {
public static void main(String[] args) throws InterruptedException {
// Test
String s = "a: 1 | b=2 ; c=3.2 / d=4,2";
showNumbers(s);
}
static void showNumbers(String s) {
Pattern regex = Pattern.compile("\\d[\\d,.]*");
Matcher matcher = regex.matcher(s);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
}
出力:
1
2
3.2
4,2