zoukankan      html  css  js  c++  java
  • Spring类中的split()方法

    Java 中截取反斜杠 replaceAll和split (“”) 问题解决办法 

    xxx.split("\") 显然得不到想要的结果 

    正确方法 

    xxx.split("\\"); 

    原因如下: 

    在Java中处理一些路径相关的问题的时候,如要取出ie浏览器上传文件的文件名,由于ie会把整个文件路径都作为文件名上传,需要用java.lang.String中的replaceAll或者split来处理。如: 

    上传文件路径为:C:Documents and SettingscollinMy Documents111-lazyloading.gif,欲取出文件名:111-lazyloading.gif。可以 

    String temp[] = name.split("\\"); 
    if (temp.length > 1) { 
    name = temp[temp.length - 1]; 
    } 

    regex为\\,因为在java中\表示一个,而regex中\也表示,所以当\\解析成regex的时候为\。 

    由于unix中file.separator为斜杠"/",下面这段代码可以处理windows和unix下的所有情况: 

    String temp[] = name.replaceAll("\\","/").split("/"); 
    if (temp.length > 1) { 
        name = temp[temp.length - 1]; 
    }

    在使用java中的split拆分特殊字符的时候,会发现达不到自己想要的结果。比如

    "1234567891^1234567890".split("^")[1]  

    会提示数组下标越界异常,说明根本没有拆分成功。究其原因,原来^是特殊字符,split中的参数为正则表达式,所以要想让split识别特殊字符,就需要把参数转变为正则,即在参数前加上"\"即可。

    "1234567891^1234567890".split("\^")[1]  
     
  • 相关阅读:
    机器学习(二)分类决策树
    机器学习(一):朴素贝叶斯
    NLP(五):关键词提取补充(语料库和向量空间)
    oracle变量的定义和使用【转】
    一些开发技巧和工具使用心得
    醒狮赋
    C# 字符串的截取和替换
    C# 判断字符串是否为日期格式
    重装系统
    电脑桌面所有图标消失
  • 原文地址:https://www.cnblogs.com/shisuiliunian/p/6293640.html
Copyright © 2011-2022 走看看