import re from datetime import datetime # 处理金额类数据 def handle_decimal(string): if not string: return "" return re.sub(r'[^0-9.]', '', string) # 处理日期类数据 def handle_date(string): if not string: return "" string = string.replace("年", "-").replace("月", "-").replace("日", "") string = re.sub(r'[^0-9-]', '', string) if is_valid_date_format(string): return string else: return "" # 判断是否是合法的日期格式 def is_valid_date_format(date_str): if len(date_str) < 6: return False # 定义可能的日期格式 formats = [ # yyyy-MM-dd '%Y-%m-%d', # yy-MM-dd '%y-%m-%d', # yyyyMMdd '%Y%m%d', # yyMMdd '%y%m%d', ] # 遍历所有格式,尝试解析日期 for fmt in formats: try: datetime.strptime(date_str, fmt) return True except ValueError: pass return False