当我使用此代码,我没有预期的结果:简单的Java正则表达式不
pattern = Pattern.compile("create\\stable\\s(\\w*)\\s\\(", Pattern.CASE_INSENSITIVE);
matcher = pattern.matcher("create table CONTACT (");
if(matcher.matches()) {
for(int i =0; i<matcher.groupCount();i++) {
System.out.println("table : " + matcher.group(i) + matcher.start(i) + " - " + matcher.end(i));
}
}
}
我希望赶上接触,但正则表达式赶上整个表达式“CREATE TABLE CONTACT(”。 有人曾经对问题的想法?
感谢
打印组索引1. – 2014-09-27 14:38:51
http://regex101.com/r/lS5tT3/66它确实捕获组1中的'contact' – vks 2014-09-27 14:39:24
非常感谢你们。我虽然如果正则表达式匹配groupCount将返回2(整个表达式和组捕获)。 – 2014-09-27 14:41:42