Golang | Extraer toda la expresión regular de la string

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 un texto grande, como registros, la salida generada por otros programas, etc.
En Go regexp, puede encontrar toda la expresión regular en la string dada con la ayuda de FindAllString()método. Este método devuelve una porción de todas las coincidencias sucesivas de la expresión regular especificada, tal como se define en la descripción ‘Todos’ en el comentario del paquete. O este método devolverá cero si no se encuentra una coincidencia y aquí el recuento indica el número de substrings del segmento devuelto. 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) FindAllString(str string, m int) []string

Ejemplo 1:

// Go program to illustrate how to find
// all the regexp from the given slice
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Finding all regexp from 
    // the given string
    // Using FindAllString () method
    m := regexp.MustCompile(`geeks.`)
  
    fmt.Println(m.FindAllString("GeeksgeeksGeeks, geeks", -1))
    fmt.Println(m.FindAllString("Hello! geeksForGEEKsgeeks-geeks", 2))
    fmt.Println(m.FindAllString("I like Go language", 0))
    fmt.Println(m.FindAllString("Hello, Welcome", 1))
  
}

Producción:

[geeksG]
[geeksF geeks-]
[]
[]

Ejemplo 2:

// Go program to illustrate how to find
// all the regexp from the given slice
package main
  
import (
    "fmt"
    "regexp"
)
  
// Main function
func main() {
  
    // Finding the number from 
    // the given string
    // Using FindAllStrings() method
    s := "I45, like345, Go-234 langu34age"
  
    m := regexp.MustCompile(`[-]?\d[\d]*[\]?[\d{2}]*`)
    res := m.FindAllString(s, 2)
    for _, ele := range res {
        fmt.Println("Number:", ele)
    }
}

Producción:

Number: 45
Number: 345

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 *