⊗jsSpREMl 114 of 294 menu

Multilinha em expressões regulares JavaScript

As expressões regulares, ao trabalhar com strings multilinha, têm as suas particularidades. Vamos analisá-las usando como exemplo a seguinte string, que contém caracteres comuns, caracteres de quebra de linha e tabulações:

let str = `111 222 333 444`;

Quebra de linha

Os caracteres de quebra de linha podem ser capturados usando o comando '\n':

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

Como resultado, a variável armazenará o seguinte (os espaços entre as linhas são tabulações):

`111! 222! 333! 444`;

Tabulação

Os caracteres de tabulação podem ser capturados usando o comando '\t':

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

Como resultado, a variável armazenará o seguinte:

` 111 !222 !333 !444 `;

Comportamento do ponto

O comando '.' numa string multilinha não captura caracteres de quebra de linha:

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

Como resultado, a variável armazenará o seguinte:

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

Qualquer caractere

Para capturar todos os caracteres numa string multilinha, usa-se um artifício na forma da combinação [\s\S]. Essa construção encontrará todos os caracteres normais e todas as quebras de linha:

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

Como resultado, a variável armazenará o seguinte:

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

Circunflexo (^)

Usando o modificador 'm' é possível ativar o modo multilinha. Nesse caso, o circunflexo capturará o início de cada linha:

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

Como resultado, a variável armazenará o seguinte:

` !111 !222 !333 !444 `;

Cifrão ($)

O comando '$' no modo multilinha capturará o final de cada linha:

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

Como resultado, a variável armazenará o seguinte:

` 111! 222! 333! 444! `;

Problemas práticos

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

` abc! def! ghi! jkl! `;

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

` ! abc ! def ! ghi ! jkl `;

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

`! abc def ghi jkl !`;

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

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

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

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

Dada a string:

` abc def ghi jkl `;

Escreva uma expressão regular que transforme esta string na seguinte:

` !abc !def !ghi !jkl `;
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar