Python 判断字符串是否为 yyyyMMdd 格式日期
以下是 Python 的示例代码,用于判断字符串是否符合日期类型 'yyyyMMdd':
import re
def is_valid_date(date_string):
pattern = re.compile(r'^\d{8}$') # 匹配8个数字的字符串
if not pattern.match(date_string):
return False
year = int(date_string[:4])
month = int(date_string[4:6])
day = int(date_string[6:])
if month < 1 or month > 12:
return False
days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
if year % 4 == 0 and (year % 100 != 0 or year % 400 == 0):
days_in_month[1] = 29 # 闰年2月有29天
if day < 1 or day > days_in_month[month - 1]:
return False
return True
# 测试代码
print(is_valid_date('20210131')) # True
print(is_valid_date('20210229')) # False
print(is_valid_date('20211301')) # False
print(is_valid_date('20210001')) # False
print(is_valid_date('20211232')) # False
原文地址: https://www.cveoy.top/t/topic/nG27 著作权归作者所有。请勿转载和采集!