最近做的项目涉及到文本处理, 初一看数据, 很 “脏”, 简体繁体、错别字、英文大小写、全角半角、标点符号等等. 每种情形都需要对应的处理方法, 本文介绍的字符串标准化, 或者称为归一化处理, 主要解决全角半角, 以及特殊符号的情形.
比如这些符号: !~。•﹖
, 它们的存在就像 “魔鬼”, 对接下来的正则表达式处理也带来了麻烦, 有时候, 真想不到用户怎么把这些字符输进来的?
言归正传, 这里就要用到字符串标准化. 我很早就想要这样一个工具函数了, 最近阅读 Ansj 的源码时, 发现了这样一个工具, 略加改造就变成我想要的啦^^
基本思路如下:
|
|
由于应用场景需要, 对于有些字符的转换会做一定特殊化处理, 列表如下
|
|