Mọi người cho mình hỏi dòng code dưới đây gồm những group nào (vd group(0) …) và group đó có nghĩa gì? Đây là code Java.
String pattern = "(.*)(\\d+)(.*)";
Mọi người cho mình hỏi dòng code dưới đây gồm những group nào (vd group(0) …) và group đó có nghĩa gì? Đây là code Java.
String pattern = "(.*)(\\d+)(.*)";
ko chắc lắm nha:
3 group
(.*)
xâu chứa 0 hoặc nhiều “.”(\d+)
xâu chưa 1 hoặc nhiều chữ số 0 - 9(.*)
như nhóm 1nó sẽ match với các xâu như: 1
.1
.0.
.123...
.....3141592654......
etc
Cho mình thêm Group(0) luôn đi bạn!
Đây là code đầy đủ:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexMatches
{
public static void main( String args[] ){
// String de duoc quet de tim pattern.
String line = "Vietjack xin chao cac ban. Day la vi du ve Regex! 1000 0USD";
String pattern = "(.*)(\\d+)(.*)";
// Tao mot doi tuong Pattern
Pattern r = Pattern.compile(pattern);
// Tao doi tuong matcher.
Matcher m = r.matcher(line);
if (m.find( )) {
System.out.println("Gia tri duoc tim thay la: " + m.group(0) );
System.out.println("Gia tri duoc tim thay la: " + m.group(1) );
System.out.println("Gia tri duoc tim thay la: " + m.group(2) );
} else {
System.out.println("Khong co ket noi");
}
}
}
Đây là kết quả
Gia tri duoc tim thay la: Vietjack xin chao cac ban. Day la vi du ve Regex! 1000 0USD
Gia tri duoc tim thay la: Vietjack xin chao cac ban. Day la vi du ve Regex! 1000
Gia tri duoc tim thay la: 0
Nhờ mọi người giải thích giùm
.
Sẽ match với một kí tự bất kì