質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

1509閲覧

Pythonによる日付表示形式の正規表現

Justin04

総合スコア11

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

正規表現

正規表現とは特定の文字列によるパターンマッチングを行う際に用いられる宣言型プログラミングです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/03/10 01:50

退屈なことはPythonにやらせようの9章で、米国日付を欧州日付に変更するプログラムを作成しようとしています。実行してもどのファイルも該当しないのですが、正規表現の定義に間違いがあるのでしょうか?ご確認お願いいたします。ちなみに、カレントディレクトリには2019-04-10_〇〇.pyなどのファイルを入れてあります。

Python

1#! python3 2# renameDates.py - 米国日付を欧州式に書き換える 3 4import shutil, os, re 5 6# TODO: 米国式日付のファイル名にマッチする正規表現を作る 7date_pattern = re.compile(r"""^(.*?) 8 ((0|1)?\d)- 9 ((0|1|2|3)?\d)- 10 ((19|20)\d\d) 11 (.*?)$ 12 """, re.VERBOSE) 13 14# TODO: カレントディレクトリの全ファイルをループ 15for amer_filename in os.listdir('C:\Users\s2160085.MAX-D4.000\Documents\Python Scripts'): 16 mo = date_pattern.search(amer_filename) 17 18# TODO: 日付のないファイルをスキップ 19 if mo == None: 20 continue 21 22# TODO: ファイル名を部分分解する 23 before_part = mo.group(1) 24 month_part = mo.group(2) 25 day_part = mo.group(4) 26 year_part = mo.group(6) 27 after_part = mo.group(8) 28 29# TODO: 欧州式の日付ファイル名を作る 30 euro_filename = before_part + day_part + '-' + month_part + '-' + year_part + after_part 31 32# TODO: ファイル名を変更する 33 print(' Renaming "{}" to "{}"...'. format( amer_filename, euro_filename)) 34 #shutil.move( amer_filename, euro_filename)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yureighost

2020/03/10 02:07

動作させてみましたが、米国時間形式のファイル(例:3-10-2020.txt)なら ちゃんと変換前後の内容がコンソール出力されています。
Justin04

2020/03/10 03:53

ファイルの形式が該当しないものばかりでした… お恥ずかしい質問で申し訳ありません!ありがとうございました。
hayataka2049

2020/03/10 08:25

自分で回答をつけて自己解決にする機能があるので、暇なときにでも自己解決で解決済みにしておいてください。解決してないのかなと思って見に来る人もいるので。
Justin04

2020/03/11 09:15

失礼いたしました。解決済みにしておきます。
guest

回答1

0

自己解決

日付形式を間違えていました。

投稿2020/03/11 09:14

Justin04

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問