正则表达式查找问题?
igyhi 2009-01-20 04:01:22 /**
* 查找
* @param pattern ORO正则式对象
* @param cont 目标内容
* @param num 查找数量
*/
public static String find(Pattern pattern,String cont,int num)
{
Perl5Matcher matcher = new Perl5Matcher();
PatternMatcherInput matcherInput = new PatternMatcherInput(cont);
int i=0;
while (matcher.contains(matcherInput,pattern)){
if(i>=num)break;
MatchResult result = matcher.getMatch();
i=i+1;
}
return result.toString();
}
文本:
ABC
11a
DEF
ABC
22b
DEF
ABC
33c
DEF
reg:
ABC[0-9A-Z]*DEF
rs:
ABC11aDEFABC22bDEFABC33cDEF
这个结果是正确的,但是没有取的更细致一些,我想要的是
ABC11aDEF
ABC22bDEF
ABC33cDEF
而实际运行的取值是第一个 ABC 和最后一个 DEF 中间的内容了
要怎么改才可以呢?