Expresiones regulares en Scala

Las expresiones regulares explican un patrón común utilizado para hacer coincidir una serie de datos de entrada, por lo que es útil en la coincidencia de patrones en numerosos lenguajes de programación. En Scala, las expresiones regulares generalmente se denominan Scala Regex .
Regex es una clase que se importa del paquete scala.util.matching.Regexy se aplica ampliamente en la búsqueda y el análisis de texto. Para convertir una string en Expresiones regulares , debemos utilizar el método r() con la string indicada.

Ejemplo :

// Scala program for Regular 
// Expressions
  
// Creating object
object GfG 
{
  
    // Main method
    def main(args: Array[String]) 
    {
      
        // Applying r() method
        val portal = "GeeksforGeeks".r
        val CS = "GeeksforGeeks is a CS portal."
  
        // Displays the first match
        println(portal findFirstIn CS)
    }
}
Producción:

Some(GeeksforGeeks)

Aquí, hemos llamado al método r()en la string indicada para obtener una instancia de Regex class, con el fin de crear un patrón. El método findFirstIn()se utiliza en el código anterior para encontrar la primera coincidencia de la expresión regular. Para encontrar todas las palabras coincidentes en la expresión, use findAllIn()el método.

Ejemplo :

// Scala program for Regular 
// Expressions
import scala.util.matching.Regex
  
// Creating object
object GfG 
{
  
    // Main method
    def main(args: Array[String]) 
    {
      
        // Applying Regex class
        val x = new Regex("Nidhi")
        val myself = "My name is Nidhi Singh."
  
        // replaces first match with the
        // String given below
        println(x replaceFirstIn(myself, "Rahul"))
    }
}
Producción:

My name is Rahul Singh.

Incluso podemos usar el constructor de Regex en lugar del r()método. Aquí, replaceFirstIn()el método se utiliza para reemplazar la primera coincidencia de la string indicada e incluso podemos reemplazar todas las coincidencias usando el replaceAllIn()método.

Ejemplo :

// Scala program for Regular 
// Expressions
import scala.util.matching.Regex
  
// Creating object
object GfG 
{
  
    // Main method
    def main(args: Array[String]) 
    {
      
        // Applying Regex class
        val Geeks = new Regex("(G|g)fG")
        val y = "GfG is a CS portal. I like gfG"
  
        // Displays all the matches separated
        // by a separator
        println((Geeks findAllIn y).mkString(", "))
    }
}
Producción:

GfG, gfG

Aquí, hemos usado el método mkString para concatenar todas las coincidencias, separadas por un separador y una barra vertical ( | ) se usa en el código anterior para buscar mayúsculas y minúsculas en la string dada. Por lo tanto, aquí se devuelven tanto mayúsculas como minúsculas de la string indicada.

Sintaxis para expresiones regulares de Scala

Java hereda algunas características de Perl, Scala hereda la sintaxis de Scala regex de Java. A continuación se muestra la lista de sintaxis de metacaracteres:

subexpresión Partidos
^ Se utiliza para hacer coincidir el punto de inicio de la línea.
ps Se utiliza para hacer coincidir el punto de terminación de la línea.
. Se utiliza para hacer coincidir cualquier carácter, excepto la nueva línea.
[…] Se utiliza para hacer coincidir cualquier carácter dentro de los corchetes.
[^…] Se utiliza para hacer coincidir cualquier carácter que no esté entre paréntesis.
\\A Se utiliza para hacer coincidir el punto de inicio de la string intacta.
\\z Se utiliza para hacer coincidir el punto de terminación de la string intacta.
\\Z Se utiliza para hacer coincidir el final de toda la string excluyendo la nueva línea, si existe.
re* Se utiliza para hacer coincidir cero o más apariciones de las expresiones anteriores.
re+ Se utiliza para coincidir con una o más de las expresiones anteriores.
¿re? Se utiliza para hacer coincidir cero o una aparición de la expresión anterior.
re {n} Se utiliza para hacer coincidir con precisión un número n de apariciones de la expresión anterior.
re {n,} Se utiliza para coincidir con n o más apariciones de la expresión anterior.
re {n, m} Se utiliza para hacer coincidir al menos n y como máximo m aspectos de la expresión anterior.
q|r Se utiliza para hacer coincidir q o r.
(re) Se utiliza para agrupar las Expresiones regulares y recoge el texto con el que coinciden.
(?: re) También agrupa las expresiones regulares pero no recuerda el texto coincidente.
(?> re) Se utiliza para hacer coincidir el patrón de autosuficiencia en ausencia de retroceso.
\\w Se utiliza para hacer coincidir los caracteres de la palabra.
\\W Se utiliza para hacer coincidir los caracteres de la no palabra.
\\s Se utiliza para hacer coincidir los espacios en blanco que son análogos a [\t\n\r\f].
\\S Se utiliza para hacer coincidir espacios que no son en blanco.
\\d Se utiliza para hacer coincidir los dígitos, es decir, [0-9].
\\D Se utiliza para emparejar no dígitos.
\\GRAMO Se utiliza para hacer coincidir el punto donde se superpone la última coincidencia.
\\norte Se utiliza como referencia inversa para ocupar el número de grupo n .
\\b Se utiliza para hacer coincidir la palabra fronteras cuando está fuera de los corchetes y coincide con el retroceso cuando está entre paréntesis.
\\B Se utiliza para hacer coincidir fronteras sin palabras.
\\n, \\t, etc Se utiliza para hacer coincidir las nuevas líneas, tabulaciones, etc.
\\Q Se utiliza para escapar (comillas) de cada uno de los caracteres hasta \\E.
\\MI Se usa en finales de comillas que comienzan con \\Q.

Publicación traducida automáticamente

Artículo escrito por nidhi1352singh 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 *