MST

星途 面试题库

面试题:Python正则表达式匹配特定日期格式

假设文本中存在多种日期格式,如'YYYY - MM - DD'、'MM/DD/YYYY'和'YYYY年MM月DD日',请用Python的正则表达式提取出所有'YYYY - MM - DD'格式的日期,并将提取到的日期以列表形式返回。
33.0万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
import re


def extract_date(text):
    pattern = r'\d{4}-\d{2}-\d{2}'
    return re.findall(pattern, text)


你可以使用以下方式调用这个函数:

text = "今天是2023-08-01,还有日期格式如08/01/2023,2023年08月01日"
result = extract_date(text)
print(result)

上述代码中:

  1. 定义了extract_date函数,函数接收一个字符串text作为参数。
  2. 在函数内部,使用re.findall方法查找所有符合\d{4}-\d{2}-\d{2}正则表达式模式的日期,\d表示匹配数字,{4}表示前面的数字出现4次,{2}表示前面的数字出现2次,即匹配YYYY - MM - DD格式的日期,并返回一个列表。
  3. 最后定义了一个文本text调用extract_date函数,并打印结果。