我是python的新手,并试图找出如何将句子与变量词匹配
示例'成功上传'
中的文件 test.bed现在在上面的句子中,文件名会改变(它可能是sample.png),其余的单词会相同。
任何人都可以告诉我使用正则表达式匹配句子的最佳方式。
感谢
答案 0 :(得分:3)
如果您只想匹配任何:
r'The file (.+?) in successfully uploaded'
.
表示任何字符,+
表示前面的一个或多个字符。
?
意味着非贪婪地执行此操作,因此,如果您连续使用两个句子,例如"The file foo.bar is successfully uploaded. The file spam.eggs is successfully uploaded."
,它将匹配"foo.bar"
,然后"spam.eggs"
},而不只是找到一个匹配"foo.bar is successfully uploaded. The file spam.eggs"
。您的申请可能不需要它。
最后,括号是如何将模式的一部分标记为可以从匹配对象中提取的组。
但是如果你想只匹配有效的文件名怎么办?好吧,您需要为有效的文件名提出一个规则,根据您的应用程序,这可能会有所不同。它是Windows特定的吗?是你在解析引用带空格的文件名吗?等等。