Maison >développement back-end >Golang >Ligne exacte dans le fichier regex Golang
Golang est un langage de programmation puissant dont la fonctionnalité d'expression régulière intégrée facilite le traitement des fichiers texte. Dans Golang, les expressions régulières peuvent être utilisées pour faire correspondre et extraire des lignes spécifiques dans des fichiers. Cet article de l'éditeur PHP Xiaoxin présente aux lecteurs comment utiliser la fonction d'expression régulière de Golang pour faire correspondre avec précision les lignes d'un fichier et donne des exemples de code réels. En étudiant cet article, les lecteurs seront en mesure de mieux comprendre et d'appliquer la fonction d'expression régulière dans Golang et d'améliorer l'efficacité et la précision du traitement des fichiers.
J'ai un fichier avec le contenu suivant
# requires authentication with auth-user-pass auth-user-pass #auth-user-pass # auth-user-pass auth-user-passwd
Existe-t-il un moyen de faire en sorte que l'expression régulière corresponde uniquement à la deuxième ligne avec Golang ?
J'ai essayé d'utiliser le code suivant mais il renvoie une tranche vide
package main import ( "fmt" "os" "regexp" ) func main() { bytes, err := os.readfile("file.txt") if err != nil { panic(err) } re, _ := regexp.compile(`^auth-user-pass$`) matches := re.findallstring(string(bytes), -1) fmt.println(matches) }
$ go run main.go []
Votre chaîne contient plusieurs lignes, vous devez donc activer le mode multiligne (en utilisant le drapeau m
) :
Voici un exemple simple :
package main import ( "fmt" "regexp" ) func main() { var str = `# Requires authentication with auth-user-pass auth-user-pass #auth-user-pass # auth-user-pass auth-user-passwd` re, _ := regexp.Compile(`(?m)^auth-user-pass$`) matches := re.FindAllString(str, -1) fmt.Println(matches) }
Vous pouvez essayer cet extrait de code sur : https://www.php.cn/link/f4f4a06c589ea53edf4a9b18e70bbd40.
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!