小编典典

正则表达式匹配文件名和文件扩展名的开头

python

与以“ Run”开头且文件扩展名为“ .py”的字符串(在本例中为文件名)匹配的正则表达式是什么?

正则表达式应匹配以下任何一个:

RunFoo.py
RunBar.py
Run42.py

它不应该匹配:

myRunFoo.py
RunBar.py1
Run42.txt

我正在寻找的SQL等效项是... LIKE 'Run%.py' ...


阅读 209

收藏
2020-12-20

共1个答案

小编典典

对于正则表达式,可以使用:

re.match(r'Run.*\.py$')

快速说明:

  • 。表示匹配任何字符。
  • 表示匹配上一个字符的任何重复(因此。表示任何字符序列)
  • \是逃避显式点的转义
  • $表示“字符串结尾”,因此我们不匹配“ Run_foo.py.txt”

但是,对于此任务,最好使用简单的字符串方法。即。

filename.startswith("Run") and filename.endswith(".py")

注意:如果要区分大小写(例如,匹配“ run.PY”和“
Run.py”,请对正则表达式使用re.I选项,或转换为特定的大小写(例如,filename.lower())在使用字符串方法之前。

2020-12-20