⊗jsSpREMl 114 of 294 menu

Multilínea en expresiones regulares de JavaScript

Las expresiones regulares al trabajar con cadenas multilínea tienen sus particularidades. Vamos a analizarlas usando como ejemplo la siguiente cadena, que contiene caracteres comunes, caracteres de salto de línea y tabulaciones:

let str = `111 222 333 444`;

Salto de línea

Los caracteres de salto de línea se pueden capturar usando el comando '\n':

let res = str.replace(/\n/g, '!');

Como resultado, se almacenará lo siguiente en la variable (los espacios entre líneas son tabulaciones):

`111! 222! 333! 444`;

Tabulación

Los caracteres de tabulación se pueden capturar usando el comando '\t':

let res = str.replace(/\t/g, '!');

Como resultado, se almacenará lo siguiente en la variable:

` 111 !222 !333 !444 `;

Comportamiento del punto

El comando '.' en una cadena multilínea no captura los caracteres de salto de línea:

let res = str.replace(/./g, '!');

Como resultado, se almacenará lo siguiente en la variable:

` !!! !!!! !!!! !!!! `;

Cualquier carácter

Para capturar todos los caracteres en una cadena multilínea, se usa un truco ingenioso que consiste en la combinación [\s\S]. Esta construcción encontrará todos los caracteres comunes y todos los saltos de línea:

let res = str.replace(/[\s\S]/g, '!');

Como resultado, se almacenará lo siguiente en la variable:

`!!!!!!!!!!!!!!!!!!`;

Acento circunflejo (^)

Con el modificador 'm' se puede activar el modo multilínea. En este caso, el circunflejo coincidirá con el inicio de cada línea:

let res = str.replace(/^/gm, '!');

Como resultado, se almacenará lo siguiente en la variable:

` !111 !222 !333 !444 `;

Signo de dólar ($)

El comando '$' en el modo multilínea coincidirá con el final de cada línea:

let res = str.replace(/$/gm, '!');

Como resultado, se almacenará lo siguiente en la variable:

` 111! 222! 333! 444! `;

Problemas prácticos

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

` abc! def! ghi! jkl! `;

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

` ! abc ! def ! ghi ! jkl `;

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

`! abc def ghi jkl !`;

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

`! ! abc ! def ! ghi ! jkl !`;

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

`! abc! def! ghi! jkl! !`;

Dada la cadena:

` abc def ghi jkl `;

Escribe una expresión regular que transforme esta cadena en la siguiente:

` !abc !def !ghi !jkl `;
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar