所以我在做一個項目,我不得不編寫一個程序打開文件夾中的所有.rtf文件,並搜索與用戶提供的正則表達式匹配的任何行,並且結果必須打印到屏幕上。如何使一個正則表達式匹配任何以.rtf結尾的文件?
該代碼很容易,但我很難寫一個正則表達式匹配任何以.rtf
結尾的文件。
這裏是一個文件夾內的所有文件中,Python會與.rtf
結尾的文件搜索的字符串:
rxn of glucose.png Screen Shot 2017-07-17 at 8.25.30 AM.png Screen Shot 2017-08-18 at 11.23.21 AM.png Screen Shot 2017-08-18 at 11.36.27 AM.png Screen Shot 2017-08-19 at 6.06.19 AM.png SSS.rtf Untitled 2.rtf Untitled 3.rtf Untitled 4.rtf Untitled.rtf
。
我試過很多的正則表達式,如:https://regex101.com/r/oZzN6T/1
2)[a-zA-Z0-9].rtf
https://regex101.com/r/RaeL0Z/1
3).+\.rtf
1)(\w+\.rtf)
它的結果看看個
https://regex101.com/r/8hRIGo/1
期望的結果是:Untitled 2.rtf Untitled 3.rtf Untitled 4.rtf Untitled.rtf SSS.rtf
但一些正則表達式的上方匹配這些文件的某些部分和其他人相匹配的整個文本本身!
這些正則表達式都不能正常工作。我明白,他們爲什麼不工作,但我無法修復它們。我應該如何修改它們或者其他什麼應該是新的正則表達式,以匹配給定字符串中的擴展名爲.rtf
的文件?
@JonUleis它匹配整個文本,就像我的正則表達式 –
之一爲什麼地球上,你在**串有** ??? –
@jordanm,因爲我還沒有研究過它。另外,你不覺得'str.endswith('。rtf')'會匹配整個字符串嗎? –