Golang | Reemplazo de todas las strings que coinciden con la expresión regular

Una expresión regular es una secuencia de caracteres que define un patrón de búsqueda. El lenguaje Go admite expresiones regulares. Una expresión regular se usa para analizar, filtrar, validar y extraer información significativa de texto grande, como registros, la salida generada de otros programas, etc.
En Go regexp, puede reemplazar la string original con otra string si la string especificada coincide con la expresión regular especificada con la ayuda del método ReplaceAllString() . En este método, el signo $ significa interpretado como en Expandir como $1 indica el texto de la primera subcoincidencia. Este método se define en el paquete regexp, por lo que para acceder a este método necesita importar el paquete regexp en su programa.

Sintaxis:

func (re *Regexp) ReplaceAllString(str, r string) string

Ejemplo 1:

// Go program to illustrate how to
// replace string with the specified regexp
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Replace string with the specified regexp
    // Using ReplaceAllString() method
    m1 := regexp.MustCompile(`x(p*)y`)
  
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "B"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy--", "$1"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "$1P"))
    fmt.Println(m1.ReplaceAllString("xy--xpppyxxppxy-", "${1}Q"))
  
}

Producción:

B--BxxppB-
--pppxxpp--
--xxpp-
Q--pppQxxppQ-

Ejemplo 2:

// Go program to illustrate how to replace
// string with the specified regexp
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Creating and initializing a string
    // Using shorthand declaration
    s := "Geeks-for-Geeks-for-Geeks-for-Geeks-gfg"
  
    // Replacing all the strings
    // Using ReplaceAllString() method
    m := regexp.MustCompile("^(.*?)Geeks(.*)$")
    Str := "${1}GEEKS$2"
    res := m.ReplaceAllString(s, Str)
    fmt.Println(res)
  
}

Producción:

GEEKS-for-Geeks-for-Geeks-for-Geeks-gfg

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *