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

golang supprime les nouvelles lignes

王林
Libérer: 2023-05-15 10:40:07
original
1405 Les gens l'ont consulté

Lors de la programmation en Golang, vous rencontrerez parfois le besoin de supprimer les caractères de nouvelle ligne dans les chaînes. Le caractère de nouvelle ligne fait référence au symbole spécial qui représente une nouvelle ligne dans une chaîne. Les plus courants sont
et
. Lors du traitement de données ou de chaînes, ces symboles de nouvelle ligne affecteront l'analyse et le traitement des données et devront être supprimés d'une manière ou d'une autre. Cet article présentera plusieurs façons de supprimer les nouvelles lignes dans Golang.

1. strings.Replace méthode

Le package strings dans Golang fournit une méthode Replace qui peut être utilisée pour remplacer des caractères ou des jeux de caractères spécifiques dans une chaîne. En utilisant cette méthode, vous pouvez facilement remplacer les caractères de nouvelle ligne par des espaces ou d'autres caractères. Voici un exemple de code permettant d'utiliser la méthode Replace pour supprimer les nouvelles lignes dans une chaîne :

package main

import (
    "fmt"
    "strings"
)

func main() {
    str := "Hello
World
"
    fmt.Println("原字符串:", str)
    fmt.Println("去掉换行:", strings.Replace(str, "
", "", -1))
}
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est :

原字符串:Hello
World

去掉换行:HelloWorld
Copier après la connexion
Copier après la connexion
Copier après la connexion

Lors de l'utilisation de Replace méthode, vous devez faire attention au remplacement. Le caractère ou le jeu de caractères cible doit correspondre complètement au caractère de nouvelle ligne dans la chaîne, sinon il ne peut pas être remplacé normalement. Dans le même temps, puisque la méthode strings.Replace remplace tous les éléments correspondants qui apparaissent dans la chaîne, le dernier -1 signifie que tous les éléments correspondent.

2. Méthode strings.Trim

En plus de la méthode Replace, le package de chaînes de Golang fournit également une méthode Trim, qui peut être utilisée pour supprimer des caractères ou des jeux de caractères spécifiques de le début et la fin d'une chaîne. Vous pouvez également utiliser cette méthode pour supprimer les nouvelles lignes dans une chaîne. L'exemple de code est le suivant :

package main

import (
    "fmt"
    "strings"
)

func main() {
    str := "Hello
World
"
    fmt.Println("原字符串:", str)
    fmt.Println("去掉换行:", strings.Trim(str, "
"))
}
Copier après la connexion

Exécutez le code ci-dessus, le résultat de sortie est également :

原字符串:Hello
World

去掉换行:HelloWorld
Copier après la connexion
Copier après la connexion
Copier après la connexion

Le deuxième paramètre de la méthode Trim représente les caractères ou le jeu de caractères qui doivent être supprimés, qui peuvent être spécifiés Plusieurs caractères, séparés par des virgules. Lorsque vous supprimez les espaces de début et de fin d’une chaîne, vous pouvez utiliser strings.Trim(str, " ").

3. méthode bytes.Replace

En plus des méthodes fournies par le package strings, le package bytes fournit également des méthodes similaires qui peuvent être utilisées pour manipuler des données de type octet . Semblable à la méthode strings.Replace, la méthode Replace du package bytes peut également être utilisée pour remplacer des caractères ou des jeux de caractères spécifiques dans des données d'octets. L'exemple de code est le suivant :

package main

import (
    "bytes"
    "fmt"
)

func main() {
    str := "Hello
World
"
    b := []byte(str)
    fmt.Println("原字节:", b)
    fmt.Println("去掉换行:", string(bytes.Replace(b, []byte("
"), []byte(""), -1)))
}
Copier après la connexion

Le résultat de sortie est également :

原字节:[72 101 108 108 111 10 87 111 114 108 100 10]
去掉换行:HelloWorld
Copier après la connexion

Dans le code ci-dessus, la chaîne est d'abord convertie en un tableau d'octets, puis remplacée à l'aide de la méthode bytes.Replace . Étant donné que les données d'octets doivent être remplacées, les caractères à remplacer doivent être spécifiés en tant que type de tableau d'octets et le résultat du remplacement doit également être converti en type de chaîne.

4. La méthode ReplaceAll du package regexp

En plus des méthodes fournies par les deux packages ci-dessus, le package regexp de Golang fournit également une méthode ReplaceAll, qui peut être utilisée basé sur des expressions régulières Remplace un caractère ou un ensemble de caractères spécifique dans une chaîne. Un traitement de chaîne plus flexible peut être obtenu grâce au package regexp. L'exemple de code est le suivant :

package main

import (
    "fmt"
    "regexp"
)

func main() {
    str := "Hello
World
"
    reg, _ := regexp.Compile("
")
    fmt.Println("原字符串:", str)
    fmt.Println("去掉换行:", reg.ReplaceAllString(str, ""))
}
Copier après la connexion

Le résultat de sortie est également :

原字符串:Hello
World

去掉换行:HelloWorld
Copier après la connexion
Copier après la connexion
Copier après la connexion

Le code ci-dessus utilise d'abord la méthode Compile du package regexp pour créer un objet d'expression régulière, puis utilise la méthode ReplaceAllString de l'objet pour effectuer des opérations de remplacement de chaîne. Étant donné que la méthode ReplaceAllString effectue déjà un remplacement basé sur des expressions régulières, il n'est pas nécessaire de spécifier le jeu de caractères de remplacement, mais utilise directement "
" comme expression régulière.

Summary

Ce qui précède présente plusieurs façons de supprimer les sauts de ligne dans Golang : en utilisant les méthodes Replace et Trim du package strings, en utilisant la méthode Replace du package bytes et en utilisant la méthode ReplaceAll de la méthode du package regexp. Chaque méthode a ses propres avantages et inconvénients, et la méthode appropriée doit être sélectionnée en fonction des besoins réels d'applications spécifiques. Dans le même temps, il convient de noter que le caractère ou le jeu de caractères de remplacement doit correspondre au caractère réel de la chaîne, sinon il ne pourra pas être remplacé normalement.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!