ホームページ >Java >&#&チュートリアル >Java はどのようにして Python-Dateutil のように簡単に日付を解析できるのでしょうか?

Java はどのようにして Python-Dateutil のように簡単に日付を解析できるのでしょうか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-10 09:48:10321ブラウズ

How Can Java Parse Dates Easily Like Python-Dateutil?

Python-Dateutil のように Java で日付を簡単に解析する

Java での日付の解析は、特に任意の日付を扱う場合、困難な作業になることがあります。フォーマット。 Joda Time は解析機能を提供しますが、事前に形式を指定する必要があります。これは、不明な日付形式や一貫性のない日付形式を扱う場合に欠点になる可能性があります。

正規表現の力

この問題に対処するには、DateUtil という Java ライブラリが役立ちます。正規表現を使用して適切な日付形式を決定します。一般的な日付形式パターンとそれに対応する正規表現のコレクションを維持します。

private static final Map<String, String> DATE_FORMAT_REGEXPS = new HashMap<>() {
    {
        put("^\d{8}$", "yyyyMMdd");
        ...
    }
};

一致する日付形式

日付形式を決定するために、ライブラリは正規表現を反復処理します。パターンを調べて、日付文字列がそれらのいずれかに一致するかどうかを確認します。一致するものが見つかった場合は、対応する日付形式文字列を返します。

public static String determineDateFormat(String dateString) {
    for (String regexp : DATE_FORMAT_REGEXPS.keySet()) {
        if (dateString.toLowerCase().matches(regexp)) {
            return DATE_FORMAT_REGEXPS.get(regexp);
        }
    }
    ...
}

SimpleDateFormat の使用

日付形式が決定したら、SimpleDateFormat クラスを使用できます。日付を解析します。

SimpleDateFormat sdf = new SimpleDateFormat(dateFormat);
Date date = sdf.parse(dateString);

例使用法

DateUtil ライブラリを使用するには、次の手順に従います。

  1. ライブラリをプロジェクトにインポートします。
  2. 取得するには、determineDateFormat メソッドを呼び出します。適切な日付形式文字列。
  3. 決定された日付で SimpleDateFormat をインスタンス化します。 format.
  4. SimpleDateFormat.parse を使用して日付文字列を解析します。

結論

正規表現と一般的な日付形式のコレクションを利用するDateUtil は、DateUtil が提供するユーザーフレンドリーなエクスペリエンスと同様に、Java で日付を解析する便利で多用途な方法を提供します。 Python-Dateutil.

以上がJava はどのようにして Python-Dateutil のように簡単に日付を解析できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。