使用正则表达式python3查找固定日期格式吗?
import re
input_file= "xxx","06/05/2018","07/05/2018","09/05/20"
dob_list = []
def check_dob(input_string):
return re.findall(r"[\d]{1,2}/[\d]{1,2}/[\d]{2}", input_string)
def read_file(input_text):
for x in input_text:
var_dob = check_dob(x)
if len(var_dob) > 0:
dob_list.append(var_dob)
print(var_dob)
read_file(input_file)
预期输出:
09/05/20
Got输出:
06/05/2018
07/05/2018
09/05/20
答案 0 :(得分:1)
您几乎是正确的,请使用
[\d]{1,2}\/[\d]{1,2}\/[\d]{2}\b
相反(在正则表达式的末尾添加\b
。
\b
表示单词边界。将其放在末尾可防止以后再匹配任何字符。
您也可以将其放在正则表达式的开头和结尾。例如:
\b[\d]{1,2}/[\d]{1,2}/[\d]{2}\b
这将确保它与前面和后面没有多余字符的字符串(例如"09/02/2018"
,"1109/02/20"
等)匹配