Pythonで日付形式YYYY/MM/DDのチェックを行いたく、
正規表現\d{4}/\d{2}/\d{2} と書きました。
※13月はありえない、とかはチェックしなくてもよいです
すると、2021/03/160 (日付が3文字以上)も正規表現に引っ掛かってしまいます。
これを回避する手段を、ご存知の方がいらっしゃいましたら、教えていただきたいです。
よろしくお願いいたします。
追記です。
チェックする文字列は、YYYY/MM/DD 以外にも文字が含まれています。
finditerで、正規表現に一致する文字列のオブジェクトを取得し、
日付形式の始まる開始インデント、終了インデントを取得する処理を行っています。
例
pattern = '[\d{4}/\d{2}/\d{2} '
result = re.finditer(pattern, '2021/03/160 あいうえお')
indents = list(m.span() for m in result )
なので完全一致では取得できない認識です。
回答5件
あなたの回答
tips
プレビュー