[英]Removing selected characters from text file
我有一個很長的文本文件,其中每行看起來像/MM0001 (Table(12,))
或/MM0015 (Table(11,))
。 我只想在/MM
旁邊保留四位數字。 如果不是“ table(12,)”部分,我可以剝離所有非數字字符,但是我不知道如何僅提取四位數。 關於入門的任何建議?
如果正是這種格式,則只需打印輸出line[3:7]
您可以逐行解析文本,然后使用每行的第4到第7個字符。 ln [3:7]
import re
R=re.compile(r'/MM(\d+)')
for line in file:
L=R.match(line)
if L:
print L.group(1)
或者,更簡潔地...
lines=[R.match(line).group(1) for line in file] #works if the lines are guaranteed to start with \MM
這應該只給您/MM
后面的整數,並且無論整數字符串有多長都應該起作用。 如果保證一定長度,那么最好使用其他示例之一(不使用正則表達式)。
如果每行以/MM
開頭,則只需遍歷文件並打印出line[3:7]
例如
for line in file:
print line[3:7]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.