def regexread():
import re
result = ''
savefileagain = open('sliceeverfile3.txt','w')
#text=open('emeverslicefile4.txt','r')
text='09,11,14,34,44,10,11, 27886637, 0\n561, Tue, 5,Feb,2013, 06,25,31,40,45,06,07, 19070109, 0\n560, Fri, 1,Feb,2013, 05,21,34,37,38,01,06, 13063500, 0\n559, Tue,29,Jan,2013,'
pattern='\d\d,\d\d,\d\d,\d\d,\d\d,\d\d,\d\d'
#with open('emeverslicefile4.txt') as text:
f = re.findall(pattern,text)
for item in f:
print(item)
savefileagain.write(item)
#savefileagain.close()
上記の関数は、テキストを解析し、7 つの数値のセットを返します。3 つの問題があります。
- まず、 text='09,...etc' とまったく同じテキストを含む「読み取り」ファイルが を返します
TypeError expected string or buffer
。これは、いくつかの投稿を読んでも解決できません。 - 次に、「書き込み」ファイルに結果を書き込もうとすると、何も返されず、
- 第 3 に、print ステートメントで取得したのと同じ出力を取得する方法がわかりません。これは、必要な出力である、それぞれ 7 つの数字の 3 行です。
正規表現を使うのはこれが初めてなので、お手柔らかにお願いします!