1 正则的语法
不再多说,不熟悉的童鞋请,参考:http://deerchao.net/tutorials/regex/regex.htm
2 "\s"匹配的是哪一种空格?
\s匹配任意的空白符,包括空格,制表符(Tab),换行符,
中文全角空格
\s 空白字符:[ \t\n\x0B\f\r] \\这个是重点!
\t 制表符 ('\u0009')
\n 新行(换行)符 ('\u000A')
\r 回车符 ('\u000D')
\f 换页符 ('\u000C')
\a 报警 (bell) 符 ('\u0007')
\e 转义符 ('\u001B')
\cx 对应于 x 的控制符
\s 并不能匹配中文全角空格。
\s 只能匹配下面六种字符(详见 java.util.regex.Pattern 的 API DOC):
半角空格( )
水平制表符(\t)
竖直制表符
回车(\r)
换行(\n)
换页符(\f)
3 如何匹配全角空格
正则可以这么写:"[\\s\\p{Zs}]+" , 注意java代码中的转义。
使用Pattern或者字符串直接replaceAll都可以,如下
1》Pattern
Pattern pattern = Pattern.compile("[//s//p{Zs}]");
Matcher re = pattern.matcher(so);
so=re.replaceAll("");
2》string.replaceAll
source = source.replaceAll("[\\s\\p{Zs}]+", "");
"[\\s\\p{Zs}]+"
参考:http://blog.csdn.net/yuan8080/article/details/5622455