zoukankan      html  css  js  c++  java
  • 正则表达式陷阱

     对于正则表达式我们可能经常会看到,也许也不会感到任何陌生,那么请看下面的一个正则表达式的陷阱:

    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);
    		}
    	}
    }
    

      

     

  • 相关阅读:
    BZOJ1800 fly 飞行棋 [几何]
    Cf #434 Div.1 D Wizard's Tour [构造题]
    Last mile of the way [树形dp+重链剖分]
    World Of Our Own [Lucas+思维题]
    vue 初级小总结
    转-redux-saga
    【转】react-native开发混合App-github开源项目
    react中路由的跳转
    Lodash 浓缩
    jq的attr、prop和data区别
  • 原文地址:https://www.cnblogs.com/xiohao/p/4350686.html
Copyright © 2011-2022 走看看