ホームページ バックエンド開発 Golang Goで正規表現を使用してJSON日付を解析するにはどうすればよいですか?

Goで正規表現を使用してJSON日付を解析するにはどうすればよいですか?

Jun 03, 2024 pm 03:27 PM
json 正規表現

正規表現を使用して JSON 日付を解析するにはどうすればよいですか?正規表現「^(d{4})-(d{2})-(d{2})T(d{2}):(d{2}):(d{2})(.d+」を使用します。 )?Z$" は、"YYYY-MM-DDTHH:MM:SS.mmmZ" 形式の JSON 日付と一致します。 regexp.MatchString 関数を使用して日付を解析し、解析が成功した場合は「日付が正常に解析されました」を出力します。

如何在 Go 中使用正则表达式解析 JSON 日期?

Go で正規表現を使用して JSON 日付を解析する方法

Go は、JSON 日付を含む複雑なテキストを解析して処理するために使用できる強力な正規表現ライブラリを提供します。この記事では、正規表現を使用して JSON 日付を解析する手順を段階的に説明し、実際のケースを示します。

正規表現の構文

次の正規表現を使用して JSON 日付を照合できます:

/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?Z$/
ログイン後にコピー

この式は、「YYYY-MM-DDTHH:MM:SS.mmmZ」形式の日付と照合できます。ここで:

  • YYYY: 年
  • MM: 月
  • DD: 日付
  • HH: 時
  • MM: 分
  • SS: 秒
  • mmm: ミリ秒 (オプション)
  • Z: ズールー語のタイムゾーン

Goコード

次の Go コードは、正規表現を使用して JSON 日付を解析する方法を示しています:

package main

import (
    "fmt"
    "regexp"
)

func main() {
    date := "2023-07-04T13:30:00.123Z"

    matched, err := regexp.MatchString(`^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?Z$`, date)
    if err != nil {
        fmt.Println("Error:", err)
        return
    }

    if matched {
        fmt.Println("Date parsed successfully")
    } else {
        fmt.Println("Invalid date format")
    }
}
ログイン後にコピー

実践的な例

日付の配列を含む "dates.json" という名前の JSON ファイルがあるとします:

{
  "dates": [
    "2023-07-04T13:30:00.123Z",
    "2023-07-05T10:00:00Z",
    "2023-07-06T15:15:00Z"
  ]
}
ログイン後にコピー

以下は、JSON の解析ですファイルの日付の変更コード:

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "log"
    "regexp"
)

func main() {
    data, err := ioutil.ReadFile("dates.json")
    if err != nil {
        log.Fatal(err)
    }

    type DateResponse struct {
        Dates []string `json:"dates"`
    }

    var datesResponse DateResponse
    if err := json.Unmarshal(data, &datesResponse); err != nil {
        log.Fatal(err)
    }

    for _, date := range datesResponse.Dates {
        matched, err := regexp.MatchString(`^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?Z$`, date)
        if err != nil {
            fmt.Println("Error:", err)
        }

        if matched {
            fmt.Println("Date parsed successfully")
        } else {
            fmt.Println("Invalid date format:", date)
        }
    }
}
ログイン後にコピー

以上がGoで正規表現を使用してJSON日付を解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP 配列を JSON に変換するためのパフォーマンス最適化のヒント PHP 配列を JSON に変換するためのパフォーマンス最適化のヒント May 04, 2024 pm 06:15 PM

PHP 配列を JSON に変換するためのパフォーマンス最適化のヒント

PHP 正規表現の検証: 数値形式の検出 PHP 正規表現の検証: 数値形式の検出 Mar 21, 2024 am 09:45 AM

PHP 正規表現の検証: 数値形式の検出

Jackson ライブラリのアノテーションは、JSON のシリアル化と逆シリアル化をどのように制御しますか? Jackson ライブラリのアノテーションは、JSON のシリアル化と逆シリアル化をどのように制御しますか? May 06, 2024 pm 10:09 PM

Jackson ライブラリのアノテーションは、JSON のシリアル化と逆シリアル化をどのように制御しますか?

正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? 正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか? May 31, 2024 pm 01:04 PM

正規表現を使用して Golang でメールアドレスを検証するにはどうすればよいですか?

Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか? Jun 02, 2024 am 09:00 AM

Go で正規表現を使用してタイムスタンプを照合するにはどうすればよいですか?

Goで正規表現を使用してパスワードを確認するにはどうすればよいですか? Goで正規表現を使用してパスワードを確認するにはどうすればよいですか? Jun 02, 2024 pm 07:31 PM

Goで正規表現を使用してパスワードを確認するにはどうすればよいですか?

PHP 配列を JSON に変換するための簡単なヒント PHP 配列を JSON に変換するための簡単なヒント May 03, 2024 pm 06:33 PM

PHP 配列を JSON に変換するための簡単なヒント

Golangで正規表現を使用してURLを検出するにはどうすればよいですか? Golangで正規表現を使用してURLを検出するにはどうすればよいですか? May 31, 2024 am 10:32 AM

Golangで正規表現を使用してURLを検出するにはどうすればよいですか?

See all articles