java特殊字符转义_java中split函数参数特殊字符的处理(转
义),如:.、、...
内容介绍
本⽂主要介绍java中特殊字符做为split函数的参数,如:"." 、"\"、"|",双引号等,不能正确分隔源字符串的处理⽅法。
代码⽰例
使⽤"|"进⾏分隔的代码
String reclassData= "0,15,0|15,30,1|30,45,2|45,60,3|60,75,4|75,90,5|'NODATA','NODATA'";
String[] arrData= reclassData.split("|");
arrData的值如下:
很显然,这结果不是我们想要的预期结果,追其原因,因为"|"是特殊字符,在使⽤split函数时,需要转义,即:"\\|",修改后的代码如下:
String reclassData= "0,15,0|15,30,1|30,45,2|45,60,3|60,75,4|75,90,5|'NODATA','NODATA'";
String[] arrData= reclassData.split("\\|");
结果如下:
这次结果对了,像"|"这样的特殊字符还有".","\","$",在使⽤时,均需要转义。
String reclassData4 = "0,15,0$15,30,1$30,45,2$45,60,3$60,75,4$75,90,5$'NODATA','NODATA'";
String[] arrData4= reclassData4.split("\\$");
String reclassData2 = "0,15,0.15,30,1.30,45,2.45,60,3.60,75,4.75,90,5.'NODATA','NODATA'";
String[] arrData2= reclassData2.split("\\.");
在使⽤"\"分隔时,要注意在源字符串要使⽤"\\"进⾏转义,⽽split的参数要使⽤"\\\\",代码如下:
String reclassData3 = "0,15,0\\15,30,1\\30,45,2\\45,60,3\\60,75,4\\75,90,5\\'NODATA','NODATA'"; String[] arrData3= reclassData3.split("\\\\");
java中split的用法
尽量避免使⽤英⽂状态下的单引号、双引号来做为split的参数,如迫不得已,使⽤下⾯的⽅式来处理:
//双引号的处理
String reclassData5 = "0,15,0\"15,30,1\"30,45,2\"45,60,3\"60,75,4\"75,90,5\"'NODATA','NODATA'"; String[] arrData5= reclassData5.split("\"");

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。