import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexMatches
{
public static void main( String args[] ){
// String to be scanned to find the pattern.
String line = "This order was places for QT3000! OK?";
String pattern = "(.*)(\\d+)(.*)";
// Create a Pattern object
Pattern r = Pattern.compile(pattern);
// Now create matcher object.
Matcher m = r.matcher(line);
if (m.find( )) {
System.out.println("Found value: " + m.group(0) );
System.out.println("Found value: " + m.group(1) );
System.out.println("Found value: " + m.group(2) );
} else {
System.out.println("NO MATCH");
}
}
}
我想知道Pattern和Matcher对象是如何工作的?
我提到了一些例子但我无法想出来。
答案 0 :(得分:1)
你的小组从index = 1开始.Zero是整个匹配的索引。
所以,第一个(.*)
位于m.group(1)
,
(\\\d+)
位于m.group(2)
,
第二个(.*)
位于m.group(3)
答案 1 :(得分:0)
http://www.regular-expressions.info/tutorial.html包含了您需要了解的有关正则表达式的所有内容