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

Comment valider le nom d'utilisateur à l'aide d'une expression régulière dans Go ?

WBOY
Libérer: 2024-06-03 09:48:57
original
612 Les gens l'ont consulté

Pour utiliser des expressions régulières pour vérifier les noms d'utilisateur dans Go, vous devez d'abord installer le package regexp. Définissez ensuite une expression régulière pour correspondre aux noms d'utilisateur valides, par exemple, composée de lettres, de chiffres et de traits de soulignement, et d'une longueur comprise entre 3 et 25 caractères. Il est ensuite compilé en un objet d'expression régulière à l'aide de la fonction regexp.MustCompile(). Enfin, utilisez la méthode MatchString() pour vérifier que le nom d'utilisateur correspond à l'expression régulière.

如何在 Go 中使用正则表达式验证用户名?

Vérifiez le nom d'utilisateur dans Go à l'aide d'expressions régulières

Les expressions régulières sont un outil puissant pour faire correspondre des modèles de texte. Dans Go, nous pouvons utiliser le package regexp pour gérer les expressions régulières. Ce didacticiel vous montrera comment utiliser des expressions régulières pour valider les noms d'utilisateur dans Go. regexp 包来处理正则表达式。本教程将向你展示如何在 Go 中使用正则表达式来验证用户名。

安装正则表达式包

首先,你需要通过运行以下命令来安装 regexp 包:

go get golang.org/x/exp/regexp
Copier après la connexion

定义用户名正则表达式

接下来,你需要定义一个正则表达式来匹配有效的用户名。一个有效的用户名通常由字母、数字和下划线组成,并且长度在 3 到 25 个字符之间。以下正则表达式将匹配这样的用户名:

const usernameRegex = `^[a-zA-Z0-9_]{3,25}$`
Copier après la connexion

验证用户名

有了正则表达式后,你可以使用 regexp.MustCompile() 函数将其编译为正则表达式对象:

import (
    "regexp"
)

var usernameRE = regexp.MustCompile(usernameRegex)
Copier après la connexion

现在,你可以使用 MatchString()

Installez le package d'expression régulière

Tout d'abord, vous devez installer le package regexp en exécutant la commande suivante :

func isValidUsername(username string) bool {
    return usernameRE.MatchString(username)
}
Copier après la connexion

Définir l'expression régulière du nom d'utilisateur

Ensuite, vous devez définir une expression régulière pour correspondre à des noms d'utilisateur valides. Un nom d'utilisateur valide se compose généralement de lettres, de chiffres et de traits de soulignement et comporte entre 3 et 25 caractères. L'expression régulière suivante correspondra à un nom d'utilisateur comme celui-ci : 🎜
package main

import (
    "fmt"
    "regexp"
)

var usernameRE = regexp.MustCompile(`^[a-zA-Z0-9_]{3,25}$`)

func main() {
    // 一些有效的用户名
    validUsernames := []string{"john", "jane_doe", "123_abc"}

    // 一些无效的用户名
    invalidUsernames := []string{"", "john123_", "_username_"}

    for _, username := range validUsernames {
        if isValidUsername(username) {
            fmt.Printf("%s is a valid username\n", username)
        }
    }

    for _, username := range invalidUsernames {
        if !isValidUsername(username) {
            fmt.Printf("%s is an invalid username\n", username)
        }
    }
}
Copier après la connexion
🎜Verify username🎜🎜Une fois que vous avez l'expression régulière, vous pouvez utiliser la fonction regexp.MustCompile() pour la compiler en un objet d'expression régulière :🎜
john is a valid username
jane_doe is a valid username
123_abc is a valid username
 is an invalid username
john123_ is an invalid username
_username_ is an invalid username
Copier après la connexion
🎜Maintenant, vous pouvez utiliser la méthode MatchString() pour vérifier si le nom d'utilisateur correspond à l'expression régulière :🎜rrreee🎜Cas pratique🎜🎜Voici comment utiliser la fonction précédente pour vérifier dans un Go programme Exemple de nom d'utilisateur : 🎜rrreee🎜Sortie : 🎜rrreee

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!

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