正则表达式陷阱
对于正则表达式我们可能经常会看到,也许也不会感到任何陌生,那么请看下面的一个正则表达式的陷阱:
package com.yonyou.test; /** * 测试类 * @author 小浩 * @创建日期 2015-3-2 */ public class Test { public static void main(String[] args) { String str = "java.is.funny.www.crazyit.org"; // 将这个字符串以点号(.)分割成多个字符 String[] strArr = str.split("."); // String[] strArr = str.split("\\."); for (String s : strArr ) { System.out.println(s); } } }
最后结果什么有么有输出,是不是很奇怪。哈...
这里就进入了正则表达式的陷阱...
因为如果不加\\的话,那么“.”代表匹配所有字符,所以最后就没有结果的。
正确使用方法是下面的例子:
package com.yonyou.test; /** * 测试类 * @author 小浩 * @创建日期 2015-3-2 */ public class Test { public static void main(String[] args) { String str = "java.is.funny.www.crazyit.org"; // 将这个字符串以点号(.)分割成多个字符 // String[] strArr = str.split("."); String[] strArr = str.split("\\."); for (String s : strArr ) { System.out.println(s); } } }
联系方式