2014-04-02 154 views
0

我想要一個函數在文件內的每一行中找到一個模式(單詞字符)。我的代碼有點工作,但在閱讀第一行之後,它並沒有更進一步。誰能幫忙?進口重新python正則表達式在文件中搜索常規模式

inputtext = open('input.txt', 'r+') 
    inputtext1 = inputtext.read() 


    match = re.search(r'([matchwordinline].*\n)+', inputtext1) 



    if match: 

      match1 = match.group() 
    print match1 

回答

0

re.search匹配只有一個實例..嘗試re.findall

list_name = re.findall(r'([matchwordinline].*\n)+', inputtext1) 

更多 訪問https://docs.python.org/2/library/re.html?highlight=matching%20searching#finding-all-adverbs

import re 
inputtext = open('input.txt', 'r+') 
inputtext1 = inputtext.read() 

match = re.findall(r'([your word].*\n)+', inputtext1) 
print match 

這是我input.txt中

cat 
alicecat deaf 
cut cat crazy 
buttercup ruin 
youseeacatidont 

當我搜索詞貓我得到了下面的輸出

['cat\n', 'cat deaf\n', 'cat crazy\n', 'catidont\n'] 

希望這是你的意思..

+0

你的建議,並沒有幫助。 re.findall只會找到匹配的單詞。我想要一個給定的模式跟隨其餘的行。 – user3395021

+0

你說你想要一個給定的模式跟隨其餘的行。 –

+0

@ user3395021該行的其餘部分可用。再檢查一遍 :) –