2014-09-01 64 views
-5

我想從文本文件中找到一個單詞,然後使用python中的正則表達式在該行上打印下一個單詞。從文本文件中找到單詞並使用正則表達式打印部分行

例如: 我的名字是xyz。 我喜歡科學。 我喜歡打排球。

這是文本文件,我想查找單詞「play」並顯示下一個單詞「volleyball」。

我該如何爲它寫正則表達式?在您的正則

+0

你可以請你把這個問題的嘗試? – Jerry 2014-09-01 10:50:06

+0

你不需要這樣的正則表達式。 – Maroun 2014-09-01 10:50:09

回答

1

使用回顧後發現下一個詞,

import regex 
f=open("/path/to/the/file") 
f=f.readlines() 
for line in f: 
    m = regex.search(r'(?<=play)\S+', line) 
    print m.group() 

輸出:

volleyball. 
+0

Python是否支持可變長度lookebhind? – 2014-09-01 11:02:37

+1

不會支持,但正則表達式。 – 2014-09-01 11:03:36

+0

會''s +'和/或添加'\ b'([word邊界](http://www.regular-expressions.info/wordboundaries.html)),因爲它也會匹配'playground' =>'ground' ,但從問題不明確:) – 2014-09-01 11:10:10

相關問題