1. 程式人生 > >文字檔案中的空格、換行符、製表符的去除

文字檔案中的空格、換行符、製表符的去除

爬了一段文字,儲存為文字文件後,有很多很多空格,剛看了python的正則表示式,嘗試著使用re模組去除文字內容中的空格。

import re
f=open("duanzi.txt")
data=f.read()
print(data)
f.close()
out=open('output.txt','w')
str=data #待匹配的文字
m=re.compile('\s+')
outdata=re.sub(m,'',str)
print(outdata) #輸出格式化後文本
out.write(outdata)
out.close()

這裡用到了re模組的compile()函式和sub()函式。
re是regular expression的所寫,表示正則表示式
sub是substitute的所寫,表示替換;
re.sub是個正則表示式方面的函式,用來實現通過正則表示式,實現比普通字串的replace更加強大的替換功能;
對於輸入的一個字串,利用正則表示式,能實現比較複雜的字串替換處理,返回處理後的字串
re.sub的各個引數的詳細解釋
re.sub共有五個引數。
re.sub(pattern, repl, string, count=0, flags=0)
其中三個必選引數:pattern, repl, string
兩個可選引數:count, flags
主要的意思為:對字串string按照正則表示式pattern,將string的匹配項替換成字串repl。 
公式解析: 
pattern為表示正則中的模式字串, 
repl為replacement,被替換的內容,repl可以是字串,也可以是函式。 
string為正則表示式匹配的內容。 
count:由於正則表示式匹配到的結果是多個,使用count來限定替換的個數(順序為從左向右),預設值為0,替換所有的匹配到的結果。 
flags是匹配模式,可以使用按位或’|’表示同時生效,也可以在正則表示式字串中指定。