¿Cómo buscar una string para un patrón en JavaScript?

En este artículo, veremos cómo buscar una string para un patrón en JavaScript. Usaremos los siguientes métodos para buscar una string:

Enfoque 1: aquí, aprenderemos cómo buscar una string que incluya un patrón dado en JavaScript. El método string.search() es el método incorporado en JavaScript que se usa para este propósito. Busca una coincidencia entre expresiones regulares en una string determinada. 

Sintaxis:

let position = str.search( expression )

Parámetros: El método string.search() acepta dos parámetros:

  • String name: Se toma como parámetro el nombre del String en el que queremos buscar un patrón.
  • Expresión: Es el patrón/substring que queremos verificar si está presente en la String anterior.

Valor de retorno: Devuelve el valor del índice de la primera expresión regular coincidente en la string dada, de lo contrario, devuelve -1. Comienza desde el índice 0, y si coincide algún alfabeto, devuelve su índice correspondiente y no realiza más comprobaciones.

Ejemplo 1:

JavaScript

<script>
  
    // Taking input a string.
    var string = "GeeksforGeeks is computer science portal";
    
    // Taking a regular expression.
    var regexp1 = /G/;  
    var regexp2 = /c/;
    var regexp3 = /z/;
    
    // Output
    console.log(string.search(regexp1));
    //Expected Output: 0
    
    console.log(string.search(regexp2));
    // Expected Output: 17
    
    console.log(string.search(regexp3));
    // Expected Output: -1
</script>

Producción:

0
17
-1

Explicación: podemos observar que la primera coincidencia de ‘ G ‘ ocurre en el índice 0, mientras que la primera coincidencia de ‘ c ‘ ocurre en el índice 17, mientras que el alfabeto ‘ z ‘ no está presente en la string «GeeksforGeeks es un portal de informática», por lo tanto devuelve -1.

Ejemplo 2:

JavaScript

<script>
  
    // Taking input a string.
    var string = "GeeksforGeeks is computer science portal";
          
    // Taking a regular expression.
    var regexp = /cie/;  
  
    console.log(string.search(regexp));
    // Expected Output: 27
</script>

Producción:

27

Explicación: Podemos observar que la expresión ‘cie’ coincide con el String en el índice 27. Por lo tanto, devuelve el índice del primer elemento coincidente de la expresión regular (aquí ‘c’ en ‘cie’) si está presente en el string dada.

Enfoque 2: también podemos usar la función Javascript String match() , que devuelve una array que contiene la expresión dada cada vez que se encuentra una coincidencia con la string dada; de lo contrario, devuelve un valor nulo.

Sintaxis:

string.match( expression )

Parámetros: Aquí, toma dos parámetros:

  • String name: Se toma como parámetro el nombre del String en el que queremos buscar un patrón.
  • Expresión : es el patrón/substring que queremos verificar si está presente en la string anterior.

Ejemplo 1:

JavaScript

<script>
  
    // Taking input a string.
    let string = "GeeksforGeeks is computer science portal";
    console.log(string.match(/rGe/g));    
</script>

Producción:

['rGe']
0: "rGe"
length: 1
[[Prototype]]: Array(0)

Por lo tanto, devuelve una array cuya longitud es uno, ya que solo hay una coincidencia entre la expresión dada y la string. El indicador «g» ayuda a encontrar coincidencias sensibles a mayúsculas y minúsculas entre la string y la expresión dadas.

Para una coincidencia global que no distingue entre mayúsculas y minúsculas, podemos usar el indicador «gi» que devolverá todas las combinaciones posibles de la string dada.

Ejemplo 2:

JavaScript

<script>
  
    // Taking input a string.
    let string = "GeeksforGeeks is computer "
        + "science portal for computer geeks";
        console.log(string.match(/gee/gi));
</script>

Producción:

['Gee', 'Gee', 'gee']
0: "Gee"
1: "Gee"
2: "gee"
length: 3
[[Prototype]]: Array(0)

Por lo tanto, devuelve una array de longitud tres, que contiene todas las combinaciones posibles entre la expresión/patrón dado y la string.

Publicación traducida automáticamente

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