输入一个字符串,找出其中包含的日期
19年全国大学生计算机程序设计赛python
- 比如2010-12
- 日期在1979到2019之间,月份为01到12
- 如果存在多个结果,只输出第一个
- 字符串起始值为1
# 输入一个字符串,找出其中包含的日期
import re
N = input('请输入测试用例:')
# N = '2011dec-11199-115072019-1216' # 测试用例
print((N[3:7]).isdigit())
keyword = '-'
locations = [i.start() for i in re.finditer(keyword, N)] # 找出符合关键字符的全部目标索引
# print(locations)
target = [] # 存放目标位置
# print(locations)
for i in locations:
if N[i-4:i].isdigit() and N[i+1:i+3].isdigit(): # 判断根据关键字符找到的目标是否为数字
year = int(N[i-4:i])
month = int(N[i+1:i+3])
#print(year, month)
if 1979 <= year <=2019 and 1 <= month <= 12:
target.append(i-1)
print(target[0]) # 打印第一个目标的位置