Bạn có thể khớp số trong chuỗi bằng một trong các biểu thức chính quy sau:
"\\d+" hoặc "([0-9]+)"
Ví dụ 1: Sử dụng \\d+
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ExtractingDigits {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Nhập văn bản mẫu:");
String data = sc.nextLine();
// Biểu thức khớp các chữ số
String regex = "\\d+";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(data);
System.out.println("Các số trong chuỗi:");
while (matcher.find()) {
System.out.print(matcher.group() + " ");
}
}
}
Kết quả
Nhập văn bản mẫu: this is a sample 23 text 46 with 11223 numbers in it Các số trong chuỗi: 23 46 11223
Ví dụ 2: Sử dụng ([0-9]+)
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Just {
public static void main(String[] args) {
String data = "abc12def334hjdsk7438dbds3y388";
String regex = "([0-9]+)";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(data);
System.out.println("Các số trong chuỗi:");
while (matcher.find()) {
System.out.print(matcher.group() + " ");
}
}
}
Kết quả
Các số trong chuỗi: 12 334 7438 3 388