黑马程序员技术交流社区

标题: 关于正则表达式的小问题? [打印本页]

作者: whocases    时间: 2012-6-28 20:15
标题: 关于正则表达式的小问题?
本帖最后由 whocases 于 2012-6-29 21:03 编辑

\bcup\b 这个是匹配“cup”的规则
我测试的程序如下:
String str="My cup is in the desk";
String regEx="\bcup\b";
boolean b =str.matches((regEx);
System.out.println(b)
为什么打印出来是false.
谢谢!
作者: 王硕'    时间: 2012-6-28 20:27
。。。 matches (String regex)就是拿着str去跟regex比较,符合就是true。这里明显不符合啊,,
试试匹配下str2 :String str2="cup"  没试过,知道一个单词有边界么。
要得到匹配的内容,先用Machter的find判定
作者: 王硕'    时间: 2012-6-28 20:28
网吧党无力中,这键盘无敌了。。。
作者: 赵倩倩    时间: 2012-6-28 20:28
用\b是不对的,\b表示单词边界,而本例中是一句话,是不合适的
应为String regEx=".*cup.*";
.表示任意字符,*表示0个或多个,在cup前后都是。

其实本例中直接用String的contains方法,更简便




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2