- 注册时间
- 2011-3-21
- 最后登录
- 2022-3-22
- 在线时间
- 1191 小时
- 阅读权限
- 200
- 积分
- 9457
- 帖子
- 1256
- 精华
- 0
- UID
- 1
|
过滤字符串中的标点符号,刚碰到这个问题的时候
第一感觉就是棘手。 觉得这个至少要收集齐己知的标点符号,才能做过滤工作吧..
但是,意外的发现,在 java 中做这个事情却是出乎意料的简单。- str = str.replaceAll("\\pP+", "");
复制代码 这么就搞定了。。。
----------------
原来,在 Unicode 字符集中 不仅规定了收录哪些字符, 并且,为字符指定了 属性
标点字符的属性是 P (Punctuation)
而 java.util.regex 中的正则表达式支持 Unicode 属性匹配, 比如 \pP 就能匹配所有 属性为 P 的 Unicode 字符.
------------------
还有一些别的字符属性,具体参考 unicode.org |
|