首先为什么会有这个需求?
因为我在用结巴做分词的时候,发现,用python的readlines()对每一行进行分词,比用python的read读取整个文件然后直接进行分词,速度要慢10倍。
但是用read读取,就相当于把整篇文章看成“一句话”,然后对分词的结果进行join的时候,就会在每两句之间多了一个空格。
即,在除了首行和尾行之外,在每一行的行首和行尾,都多了一个空格。如图所示:
解决方法很简单,就是去掉行首与行尾的空格嘛。java好久没用了,python又太慢,linux的awk指令是最理想的选择,简单、高效。
### awk -f strip.awk file1 > result.txt
{
sub(/^[ ]/,"");
sub(/[ ]$/,"");
print $0
}