正则表达式基础

正则表达式由字符和控制字符组成,用于描述我们想要匹配的文本模式。以下是一些常用的正则表达式符号及其含义:

  • .:匹配任何单字符(除了换行符)。
  • *:匹配前面的子表达式零次或多次。
  • +:匹配前面的子表达式一次或多次。
  • ?:匹配前面的子表达式零次或一次。
  • []:字符集,匹配方括号内的任何单个字符。
  • ^:匹配输入字符串的开始位置。
  • $:匹配输入字符串的结束位置。

匹配”.png”图片文件

\.png$

解释如下:

  • \.:匹配点号.,因为在正则表达式中点号.有特殊含义,所以需要转义。
  • png:匹配字符串”png”。
  • $:匹配输入字符串的结束位置。

使用这个正则表达式,我们可以轻松地匹配任何以”.png”结尾的文件名,例如:

  • example.png
  • image001.png
  • screenshot_2023-04-01.png

实际应用

import re

# 示例文件名列表
filenames = [
    'example.png',
    'image001.png',
    'screenshot_2023-04-01.png',
    'document.pdf',
    'archive.zip'
]

# 匹配".png"图片文件的正则表达式
pattern = r'\.png$'

# 遍历文件名列表,匹配".png"文件
for filename in filenames:
    if re.search(pattern, filename):
        print(f'Found .png file: {filename}')
    else:
        print(f'Not a .png file: {filename}')

输出结果如下:

Found .png file: example.png
Found .png file: image001.png
Found .png file: screenshot_2023-04-01.png
Not a .png file: document.pdf
Not a .png file: archive.zip

总结