2012-04-06 102 views
0

我想讀取整行。使用re.findall讀取整行

例子:

TempFile = open('file.tmp', 'r') 
for line in TempFile: 
    m = re.findall("(?:\d{1,3}\.){3}\d{1,3}", line) 
    for x in m: 
     print <The whole line, but how?> 
+0

你的意思是「整個匹配的字符串」? 'm.group(0)'。 – 2012-04-06 20:26:22

回答

1

整條生產線仍保存在您的循環變量line,雖然我不知道你爲什麼要打印的整條生產線爲您找到您正則表達式的每場比賽。

TempFile = open('file.tmp', 'r') 
for line in TempFile: 
    m = re.findall(r"(?:\d{1,3}\.){3}\d{1,3}", line) 
    for x in m: 
     print line 

請注意,我也改變了你的正則表達式字符串到原始字符串字面量,以確保反斜槓正確轉義,就不會在這裏有差別,但它將如果你試圖用\b匹配單詞邊界, 例如。