簡體   English   中英

從文本文件中刪除所選字符

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM