Python开始时可以更具体地进行匹配

  • 本文关键字:开始时 Python python
  • 更新时间 :
  • 英文 :


我正试图像这样检查Python3中的文件名。。

myfilename273.zip
myfile2223.zip
if f_name.startswith('myfile') and f_name.endswith('.zip'):
print('True')
else:
print('False')
if f_name.startswith('myfilename') and f_name.endswith('.zip'):
print('True')
else:
print('False')

这对这两种情况都是正确的,有没有替代使用startswitch的方法可以让我更具体地瞄准目标?

脑海中浮现出正则表达式:

filename = "myfilename273.zip"
if re.search(r'^myfile.*.zip$', filename):
print("MATCH")

这将针对两个示例文件名,因为它们都以myfile开头,以.zip结尾。如果您希望以myfile开头而不是以myfilename开头的文件为目标,可以使用:

filename = "myfile2223.zip"
if re.search(r'^myfile(?!name).*.zip$', filename):
print("MATCH")

最新更新