Python 如何制作一个与任何以.rtf结尾的文件匹配的正则表达式?

Python 如何制作一个与任何以.rtf结尾的文件匹配的正则表达式?,python,regex,python-3.6,Python,Regex,Python 3.6,所以我在做一个项目,我必须编写一个程序,打开文件夹中的所有.rtf文件,搜索与用户提供的正则表达式匹配的任何行,结果必须打印到屏幕上 代码非常简单,但我很难编写一个正则表达式,它将匹配任何以.rtf结尾的文件 下面是文件夹中所有文件的字符串,Python将在其中搜索以.rtf结尾的文件: rxn of glucose.png截图2017-07-17上午8.25.30。png截图2017-08-18上午11.23.21。png截图2017-08-18上午11.36.27。png截图2017-08-

所以我在做一个项目,我必须编写一个程序,打开文件夹中的所有.rtf文件,搜索与用户提供的正则表达式匹配的任何行,结果必须打印到屏幕上

代码非常简单,但我很难编写一个正则表达式,它将匹配任何以
.rtf
结尾的文件

下面是文件夹中所有文件的字符串,Python将在其中搜索以
.rtf
结尾的文件:

rxn of glucose.png截图2017-07-17上午8.25.30。png截图2017-08-18上午11.23.21。png截图2017-08-18上午11.36.27。png截图2017-08-19上午6.06.19。png SSS.rtf无标题2.rtf无标题3.rtf无标题4.rtf无标题。rtf

我尝试了很多正则表达式,比如:

1)
(\w+\.rtf)

看看它的结果:

2)
[a-zA-Z0-9].rtf

3)
+\.rtf

理想的结果是:
Untitled 2.rtf Untitled 3.rtf Untitled 4.rtf Untitled.rtf SSS.rtf
,但上面的一些正则表达式与这些文件的某些部分匹配,而其他正则表达式与整个文本本身匹配


这些正则表达式都不能正常工作。我确实理解它们为什么不起作用,但我无法修复它们。我应该如何修改它们,或者应该使用什么新的正则表达式来匹配给定字符串中扩展名为
.rtf
的文件?

匹配以.rtf结尾的所有可打印字符,不区分大小写

/^[ -~]\.rtf$/i

我想说的是,这似乎是python的一项工作,但我想用正则表达式来回答您的问题:


((?@JonUleis它就像我的一个正则表达式一样匹配整个文本你到底有什么字符串???它应该如何匹配像
Untitled 4.rst
这样的文件?似乎一个空格是文件之间的分隔符,也是文件名中的一个有效字符。这将非常困难。如果有超过文件名中的一个
会说这是不可能的。@M.Hamel胡说八道。然后它就会变得微不足道(
endswith('.rtf')
)。而不是不可能。这是否可能?如果要匹配具有特定结尾的所有文件,请使用?在*nix中,不可打印字符对文件名有效。唯一无效的两件事是
\0
/