Java 截取反斜杠--java使用split拆分特殊字符
2014-10-28 23:22
447 查看
xxx.split("\\") 显然得不到想要的结果
正确方法
xxx.split("\\\\");
原因如下:
在Java中处理一些路径相关的问题的时候,如要取出ie浏览器上传文件的文件名,由于ie会把整个文件路径都作为文件名上传,需要用java.lang.String中的replaceAll或者split来处理。如:
上传文件路径为:C:\Documents and Settings\collin\My Documents\111-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拆分特殊字符的时候,会发现达不到自己想要的结果。比如
Java代码
"1234567891^1234567890".split("^")[1]
会提示数组下标越界异常,说明根本没有拆分成功。究其原因,原来^是特殊字符,split中的参数为正则表达式,所以要想让split识别特殊字符,就需要把参数转变为正则,即在参数前加上"\\"即可。
Java代码
"1234567891^1234567890".split("\\^")[1]
正确方法
xxx.split("\\\\");
原因如下:
在Java中处理一些路径相关的问题的时候,如要取出ie浏览器上传文件的文件名,由于ie会把整个文件路径都作为文件名上传,需要用java.lang.String中的replaceAll或者split来处理。如:
上传文件路径为:C:\Documents and Settings\collin\My Documents\111-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拆分特殊字符的时候,会发现达不到自己想要的结果。比如
Java代码
"1234567891^1234567890".split("^")[1]
会提示数组下标越界异常,说明根本没有拆分成功。究其原因,原来^是特殊字符,split中的参数为正则表达式,所以要想让split识别特殊字符,就需要把参数转变为正则,即在参数前加上"\\"即可。
Java代码
"1234567891^1234567890".split("\\^")[1]
相关文章推荐
- Java 截取反斜杠--java使用split拆分特殊字符
- Java 截取反斜杠--java使用split拆分特殊字符
- Java 截取反斜杠--java使用split拆分特殊字符
- Java 截取反斜杠--java使用split拆分特殊字符
- Java 截取反斜杠--java使用split拆分特殊字符
- Java 截取反斜杠--java使用split拆分特殊字符
- java 用split截取特殊字符
- java 用split截取特殊字符
- Java String.split()特殊字符的使用
- split使用和特殊使用(包括截取第一个字符后的数据)
- Java字符串split分割星号*等特殊字符问题
- Java split拆分使用竖线为分隔符的字符串方法
- 【ASP.NET】使用Split指定字符截取…
- Java String.split()特殊字符的用法
- Java split拆分使用竖线为分隔符的字符串方法
- 在servlet中使用split()截取以反斜杠‘\’分割的字符串
- java String 分割 split 特殊字符
- Java 使用正则表达式过滤字符串中的特殊字符
- java 用split分割的特殊字符
- 使用split进行分割时遇到特殊字符的问题