matcher.find() 匹配成功,但是System.out.println(matcher.find())返回false

/***测试正则表达式匹配成功或失败*/Patternpattern=Pattern.compile("\\bjava\\b");Matchermatcher=patte... /**
* 测试正则表达式匹配成功或失败
*/
Pattern pattern = Pattern.compile("\\bjava\\b");
Matcher matcher = pattern.matcher("java");
System.out.println(matcher.find());
这个明明匹配成功了,但是输出的是false,用Debug调试时,刚开始是true,再下一步又变成false,这是为什么?
展开
 我来答
林艺stone
推荐于2016-08-19 · TA获得超过189个赞
知道答主
回答量:46
采纳率:0%
帮助的人:27.8万
展开全部
你调错方法了
如果全字符串匹配
Pattern p = Pattern.compile("a*b");
Matcher m = p.matcher("aaaaab");
boolean b = m.matches();

find()方法是部分匹配,是查找输入串中与模式匹配的子串,使用group()函数。
追问
Pattern pattern = Pattern.compile("\\bjavaaaaaaaaaaaa\b");
Matcher matcher = pattern.matcher("java");
System.out.println(matcher.find());
这样结果也不是我想要的,matcher.find()方法还是false
h15294627957
推荐于2018-03-23 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:99
采纳率:0%
帮助的人:99.4万
展开全部

把你的代码复制到我的工程里,输出结果为“true”  

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
1099568207
2021-06-12 · 超过31用户采纳过TA的回答
知道答主
回答量:321
采纳率:0%
帮助的人:50.6万
展开全部
楼主找到解决办法了吗 我也遇到了这个问题,有时是true 有时候是false
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式