为什么数据库中会存在两种空格
最近在使用润乾进行填报开发的时候发现了一个问题:同一个数值,例如:“净利润 不含汇兑”,在数据库中去重查询时却有两个看似相同值,如图:
经查找,发现在数据填报的时候,其中一个数值里的空格是space键直接键入的,而另外一个数值是从其他浏览器中复制粘贴过来的。
我们用\s或\S正则匹配空格时,只能匹配到space键入的空格(编号为2的):
\s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。
\S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。
查询两种空格的ASCII码
经查询,正常情况下,用space键入的空格,ASCII码为32。160是某种意义上的脏数据,需要进行清洗