public static void splitOper(String[] s){
Pattern p = Pattern.compile("[0-9]+"); // 以数字做分隔,正则表达式
for(int i=0;i<s.length;i++){
Matcher m = p.matcher(s[i]); // 得到所有数字
m.find(); // 得到第一个数字
int Row = Integer.parseInt(m.group()); // 取出第一个数字
m.find(); // 得到第二个数字
int Col = Integer.parseInt(m.group()); // 取出第二个数字
System.out.println(fun(Row,Col)); // 计算结果并输出
}
}
如果String[] s是R12C4,这段代码的作用是使Row =12,Col =4,
我想问一下,在for循环是一个字符一个字符来的,里面的两个find是怎么匹配的
find()对字符串进行匹配,匹配到的字符串可以在任何位置.
Java代码示例:
Pattern p=Pattern.compile("\d+");
Matcher m=p.matcher("22bb23");
m.find();//返回true
Matcher m2=p.matcher("aa2223");
m2.find();//返回true
Matcher m3=p.matcher("aa2223bb");
m3.find();//返回true
Matcher m4=p.matcher("aabb");
m4.find();//返回false
可参照次链接。http://blog.csdn.net/cclovett/article/details/12448843