在安卓开发中,一般我们处理分割某些字符串的时候,使用String.split()方法是很方便而且很实用的,但是如果在字符串中有特殊符号的时候就会出现一些小问题,例如在使用用 | 来分隔时,就有可能会发生了一些小错误,会把一个String一个一个字母分开,看下面例子:
String s = "abc|dfg",使用s.split("|"),会得到“a”“b”“c”“|”“d”“f”“g”
查阅相关资料,这个原因主要是由于 | 在正则表达式中是个已经被使用的特殊符号,想要使用 | ,必须用 \ 来进行转义,在java字符串中,\ 也是个已经被使用的特殊符号,需要使用 \ 来转义。
所以,想要返回“abc”“dfg”,就需要这样写:s.split("\\|")。
String s = "abc|dfg",使用s.split("|"),会得到“a”“b”“c”“|”“d”“f”“g”
查阅相关资料,这个原因主要是由于 | 在正则表达式中是个已经被使用的特殊符号,想要使用 | ,必须用 \ 来进行转义,在java字符串中,\ 也是个已经被使用的特殊符号,需要使用 \ 来转义。
所以,想要返回“abc”“dfg”,就需要这样写:s.split("\\|")。
同样的情况也会发生在点( . )上面,需要转义。
转自:http://blog.sina.com.cn/s/blog_b35f94270101ffb1.html