Maison > développement back-end > Golang > le corps du texte

Comment utiliser des expressions régulières pour vérifier le format de l'heure dans Golang

WBOY
Libérer: 2023-06-24 10:24:23
original
1335 Les gens l'ont consulté

En Golang, il est très courant d'utiliser des expressions régulières pour vérifier le format de l'heure. La vérification du format de l'heure peut nous aider à vérifier l'exactitude des saisies utilisateur dans les applications et à éviter les problèmes lors du traitement du temps. Les expressions régulières sont un outil puissant qui peut nous aider à mettre en œuvre la vérification du format de l'heure. Cet article explique comment utiliser les expressions régulières pour vérifier le format de l'heure dans Golang.

Tout d’abord, nous devons comprendre la syntaxe et les connaissances de base des expressions régulières. Dans Golang, nous utilisons le package regexp pour effectuer des opérations sur les expressions régulières. Ce package fournit la structure Regexp et les méthodes associées, qui peuvent être utilisées pour des opérations telles que la correspondance de chaînes, la recherche de chaînes, le remplacement de chaînes et la validation de chaînes. Lorsque nous utilisons des expressions régulières pour la vérification du format horaire, nous devons construire des expressions régulières basées sur les caractéristiques du format horaire.

Voici quelques formats d'heure courants et les expressions régulières correspondantes :

  1. aaaa-MM-jj HH:mm:ss:

^d{4}-(?:0[1-9]|1 [0 -2])-(?:0[1-9]|1-2|3[0-1]) (?:01|2[0-3]):0-5:0-5$

  1. aaaa-MM-jj HH:mm:ss.SSS:

^d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9 ]| 1-2|3[0-1]) (?:01|2[0-3]):0-5:0-5.[0-9]{3}$

  1. aaaa/MM/jj HH :mm:ss:

^d{4}/(?:0[1-9]|1[0-2])/(?:0[1-9]|1-2|3[ 0- 1]) (?:01|2[0-3]):0-5:0-5$

  1. aaaa/MM/jj HH:mm:ss.SSS:

^d{4} /( ?:0[1-9]|1[0-2])/(?:0[1-9]|1-2|3[0-1]) (?:01|2[0-3 ]) :0-5:0-5.[0-9]{3}$

Dans l'expression régulière ci-dessus, d représente un nombre, ^ représente le début de la chaîne correspondante, $ représente la fin de la chaîne correspondante, ( ? :...) représente un groupe sans capture, | représente ou, [...] représente le jeu de caractères et les caractères d'échappement, {m,n} représente la plage des temps de répétition.

Pour les expressions régulières ci-dessus, nous pouvons expliquer les formats d'heure auxquels elles correspondent respectivement :

  1. aaaa-MM-jj HH:mm:ss : Exemple : 2021-09-01 12:30:45
  2. aaaa- MM- jj HH:mm:ss.SSS : Exemple : 2021-09-01 12:30:45.555
  3. aaaa/MM/jj HH:mm:ss : Exemple : 2021/09/01 12:30:45
  4. aaaa/ MM/jj HH:mm:ss.SSS : Exemple : 01/09/2021 12:30:45.555

Dans les applications pratiques, nous pouvons sélectionner l'expression régulière correspondante pour vérifier le format de l'heure en fonction des besoins réels.

Ce qui suit est un exemple de code de vérification du format d'heure écrit en golang :

package main

import (
    "fmt"
    "regexp"
)

func main() {
    timeStr := "2021-09-01 12:30:45"
    pattern := `^d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[1-2][0-9]|3[0-1]) (?:[01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$`
    match, _ := regexp.MatchString(pattern, timeStr)
    if match {
        fmt.Println("时间格式正确")
    } else {
        fmt.Println("时间格式错误")
    }
}
Copier après la connexion

Dans l'exemple de code ci-dessus, nous définissons d'abord une chaîne d'heure timeStr et un modèle d'expression régulière correspondant. Utilisez la méthode MatchString pour la correspondance. Si la correspondance réussit, "le format de l'heure est correct" est affiché, sinon "le format de l'heure est incorrect".

Résumé

La vérification du format de l'heure est une exigence relativement courante, et cette fonction peut être facilement implémentée à l'aide d'expressions régulières dans Golang. Cet article présente certains formats d'heure courants et les expressions régulières correspondantes, et fournit un exemple de code Golang. J'espère qu'il sera utile à tout le monde.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal