Maison >développement back-end >Golang >Comment utiliser des expressions régulières dans Golang pour vérifier si l'entrée est une adresse URL complète
En golang, il est très important d'utiliser des expressions régulières pour vérifier si une entrée est une adresse URL complète. Les expressions régulières sont un langage descriptif qui peut être utilisé pour faire correspondre des modèles de texte dans des chaînes. Lorsque nous devons vérifier si une entrée est conforme à un certain format, les expressions régulières peuvent nous aider à déterminer rapidement si l'entrée est correcte. Alors, comment utiliser des expressions régulières dans Golang pour vérifier si l'entrée est une adresse URL complète ? Cet article vous l'expliquera.
Tout d'abord, nous devons comprendre le format de base d'une adresse URL. Une URL contient les parties suivantes :
Dans ces sections, le protocole et le nom d'hôte sont obligatoires. Par conséquent, nous pouvons utiliser des expressions régulières pour vérifier si la chaîne d'entrée contient ces deux parties. Nous pouvons utiliser l'expression rationnelle du package d'expressions régulières intégrée de Golang pour déterminer si la chaîne d'entrée correspond au format souhaité.
L'exemple de code est le suivant :
package main import ( "fmt" "regexp" ) func main() { str := "https://www.example.com/index.html?id=1&name=Tom#top" pattern := `^(http|https)://[a-zA-Z0-9]+(.[a-zA-Z0-9]+)+([a-zA-Z0-9-._?,'+/\~:#[]@!$&*])*$` match, err := regexp.MatchString(pattern, str) if err != nil { fmt.Printf("Error: %s ", err) return } if match { fmt.Println("Valid URL") } else { fmt.Println("Invalid URL") } }
Dans ce code, nous utilisons des expressions régulières^(http|https)://[a-zA-Z0-9]+(.[a-zA-Z0-9]+)+([a-zA-Z0-9-._?,'+/~:#[]@!$&*])*$
去匹配输入字符串。其中,^
表示字符串开始,$
表示字符串结尾,http|https
表示匹配http或https协议,[a-zA-Z0-9]+(.[a-zA-Z0-9]+)+
表示匹配主机名,[a-zA-Z0-9-._?,'+/~:#[]@!$&*]
pour faire correspondre d'autres parties de l'URL, telles que des chemins, des chaînes de requête, des fragments, etc.
Lorsque la correspondance est réussie, affichez "URL valide", sinon affichez "URL invalide".
Il est à noter que cette expression régulière vérifie simplement si le format de l'URL est correct, mais ne vérifie pas l'existence de l'URL. Si vous devez vérifier l'existence de l'URL, vous devez utiliser d'autres méthodes.
En bref, en utilisant des expressions régulières pour vérifier si l'entrée est une adresse URL complète, cela peut nous aider à déterminer rapidement si l'entrée est conforme à un format spécifique. En Golang, il est très simple d'utiliser le package regexp pour vérifier les expressions régulières, utilisez simplement la fonction MatchString.
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!