首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

JAVA 正责表达式有关问题?

2012-01-13 
JAVA 正责表达式问题???public void query(){boolean t falseString str2 jTextField.getText()Stri

JAVA 正责表达式问题???
public void query(){
boolean t = false;
String str2 = jTextField.getText();
String str1 = jTextArea1.getText();
Pattern p = Pattern.compile(str2,Pattern.CASE_INSENSITIVE);  
Matcher m = p.matcher(str1);
t = m.find();
jTextField1.setText(Boolean.toString(t)); /// 这里返回TRUE

if(t){
for(i=0;i<m.groupCount();i++){  
jTextArea.setText(m.group(i) + "\n"); //这里为什么不能输出呢

} //把m.groupCount();改为20,或其他数,就可以输出了,这怎么回事呢??
}
}

[解决办法]
而用m.groupCount()计算的结果是不包括group(0),也就是说,如果表达式没有括号,m.groupCount结果是0
这就是加个括号的用处

热点排行