正则表达式问题【单词边界符\b】这两个结果怎么会不同呢? 本帖最后由 zhuhezan 于 2011-01-05 21:24:17 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 \b 单词边界,顾名思义,就是要求它的一侧是组成单词的字符,另一侧不是^h[a-z]{1,4}\\b[a-z]{1,5}这个正则要求\b所在位置两侧都是字母,不用去试,仅从正则语法角度分析,就可以知道,匹配任何字符串的结果肯定都是false的 System.out.println("hello world".matches("^h[a-z]{1,4} [a-z]{1,5}")); System.out.println(" ".matches("\\b"));这两句 楼主试试看 \\b 应该不匹配空格 我知道楼主是看马士兵老师的视频 估计是视频有错 System.out.println("hello world".matches("^h[a-z]{1,4}\\b.*"));这句之所以true 是 . 匹配除了\n外所有字符 当然也包括空格 你把\\b去掉试试 照常是true 这说明\\b 跟空格不匹配 所以 你执行的那两句 就是 false true 关于 "cmd.exe /c start xxxxxxx "的问题 多线程问题---run()调用静态sleep() 判断数据库中是否存在名为"abc"的表 关于JAVA程序中画三角形的问题 如果判断字符在sting内? 我要晕了,这种问题怎么办? windows怎么运行java程序 JComboBox下拉框怎么显示图片选项? 问一个很蠢的问题:什么是重载,继承,实例,派生,接口 求思路,打算做一个在局域网里可以互传文件的软件 j2se,j2ee和j2me java 图像处理源码
这个正则要求\b所在位置两侧都是字母,不用去试,仅从正则语法角度分析,就可以知道,匹配任何字符串的结果肯定都是false的
System.out.println("hello world".matches("^h[a-z]{1,4} [a-z]{1,5}"));
System.out.println(" ".matches("\\b"));这两句 楼主试试看 \\b 应该不匹配空格 我知道楼主是看马士兵老师的视频 估计是视频有错 System.out.println("hello world".matches("^h[a-z]{1,4}\\b.*"));这句之所以true 是 . 匹配除了\n外所有字符 当然也包括空格 你把\\b去掉试试 照常是true
这说明\\b 跟空格不匹配 所以 你执行的那两句 就是 false true