Maison  >  Article  >  développement back-end  >  Guide pratique des expressions régulières en langage Go : comment faire correspondre le format de l'heure

Guide pratique des expressions régulières en langage Go : comment faire correspondre le format de l'heure

WBOY
WBOYoriginal
2023-07-13 09:24:061380parcourir

Guide pratique des expressions régulières du langage Go : Comment faire correspondre les formats d'heure

Introduction :
L'expression régulière est un puissant outil de correspondance et de traitement de chaînes, et elle est également largement utilisée dans le langage Go. Cet article fournira des conseils pratiques sur le format de l'heure pour aider les lecteurs à mieux comprendre et utiliser les expressions régulières.

1. Formats de date correspondants
Formats de date courants tels que "2021-01-01", "2021/01/01", "01 janvier 2021", etc. Nous pouvons utiliser des expressions régulières pour faire correspondre ces formats.

Exemple de code :

package main

import (
    "fmt"
    "regexp"
)

func main() {
    dateStr := "2021-01-01"
    re := regexp.MustCompile(`^d{4}([-/年])d{2}([-/月])d{2}([-/日])$`)
    if re.MatchString(dateStr) {
        fmt.Println("日期格式匹配成功!")
    } else {
        fmt.Println("日期格式匹配失败!")
    }
}

Résultat de sortie :
Correspondance du format de date réussie !

2. Correspondance des formats d'heure
Formats d'heure courants tels que "12:01:01", "12:01 PM", "12:01 minutes et 01 secondes", etc. Nous pouvons utiliser des expressions régulières pour faire correspondre ces formats.

Exemple de code :

package main

import (
    "fmt"
    "regexp"
)

func main() {
    timeStr := "12:01:01"
    re := regexp.MustCompile(`^(0?[1-9]|1[0-2])(:[0-5]d){2}$`)
    if re.MatchString(timeStr) {
        fmt.Println("时间格式匹配成功!")
    } else {
        fmt.Println("时间格式匹配失败!")
    }
}

Résultat de sortie :
Correspondance du format d'heure réussie !

3. Faire correspondre les formats de date et d'heure
Parfois, nous devons faire correspondre les formats de date et d'heure en même temps, ce qui peut être réalisé en combinant des expressions régulières.

Exemple de code :

package main

import (
    "fmt"
    "regexp"
)

func main() {
    dateTimeStr := "2021-01-01 12:01:01"
    re := regexp.MustCompile(`^d{4}([-/年])d{2}([-/月])d{2}([-/日]) (0?[1-9]|1[0-2])(:[0-5]d){2}$`)
    if re.MatchString(dateTimeStr) {
        fmt.Println("日期和时间格式匹配成功!")
    } else {
        fmt.Println("日期和时间格式匹配失败!")
    }
}

Résultat de sortie :
Correspondance du format de date et d'heure avec succès !

Conclusion :
Avec les expressions régulières, nous pouvons facilement faire correspondre et traiter différents formats d'heure. Cependant, il convient de noter que les expressions régulières peuvent uniquement déterminer si le format correspond. La vérification de la légalité temporelle doit être effectuée en combinaison avec d'autres méthodes.

Lien de référence :

  • Documentation des expressions régulières du langage Go : https://golang.org/pkg/regexp/
  • Tutoriel d'introduction de 30 minutes sur les expressions régulières : https://deerchao.cn/tutorials/regex/regex .htm

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!

Déclaration:
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