dar*_*ght -1 python regex file-extension file
我正在编写一个脚本,使用正则表达式根据字幕文件更改视频文件的名称.
for files in curDir:
if re.search(r'.*[.srt]$',files): #1
print files;
if re.search(r'.*[^.srt]$',files): #2
print files;
Run Code Online (Sandbox Code Playgroud)
在执行期间,我发现#1if条件是连续执行的,所以.srt只有#2在执行条件并打印所有视频文件时才会打印所有文件.
那些条件是否应该files首先交替执行#1,然后#2呢?
我认为我的问题是re.search返回结果的方式.所以,我需要帮助来为每个文件一个接一个地访问if条件.
您不需要Regex来检查文件名是否以.srt. str.endswith将轻松地做到这一点:
for files in curDir:
if files.endswith('.srt'): # Filename ends in .srt
...
else: # Filename does not end in .srt
...
Run Code Online (Sandbox Code Playgroud)
只有当你有复杂的模式匹配时才能使用正则表达式(然后,无论如何都要使用它!).否则,应该避免它,因为它比Python的内置工具慢,对于没有经验的人来说也有些困难.