今天做项目,要求对一个文件逐行遍历时,要去掉非空行,明明看着是空行,但是总是去不掉,用正则表达式 /\d*/ 替换后也是去不掉,最后打印了一下此行字符串的字节序列是:194 160,网上查了一下,是UTF-8的空格的编码,于是就在正则表达式中增加了对此编码的判断,测试如下:
"a b".gsub(/(\s|(\u00A0)|(\u3000))/,'x')
输出: axxxb
其中a,b之间分别是中文空格,英文空格,UTF8空格。
写此以备忘,也方便大家遇到时参考.
今天做项目,要求对一个文件逐行遍历时,要去掉非空行,明明看着是空行,但是总是去不掉,用正则表达式 /\d*/ 替换后也是去不掉,最后打印了一下此行字符串的字节序列是:194 160,网上查了一下,是UTF-8的空格的编码,于是就在正则表达式中增加了对此编码的判断,测试如下:
"a b".gsub(/(\s|(\u00A0)|(\u3000))/,'x')
输出: axxxb
其中a,b之间分别是中文空格,英文空格,UTF8空格。
写此以备忘,也方便大家遇到时参考.
转载于:https://my.oschina.net/thumber/blog/52810