Início e fim de linha em expressões regulares JavaScript

Existem caracteres especiais que denotam o início '^' ou o fim da linha '$'. Vamos ver como funcionam com exemplos.

Exemplo

Neste exemplo, o padrão de busca é: substituir 'aaa' por '!' somente se estiver no início da linha:

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

Como resultado, o seguinte será armazenado na variável:

javascript'! aaa aaa'

Exemplo

Neste exemplo, o padrão de busca é: substituir 'aaa' por '!' somente se estiver no final da linha:

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

Como resultado, o seguinte será armazenado na variável:

javascript'aaa aaa !'

Exemplo

Quando uma expressão regular começa com '^' e termina com '$', estamos assim verificando se a string inteira corresponde à expressão regular.

No exemplo seguinte, o padrão de busca é: a letra 'a' repetida uma ou mais vezes, substituir a string toda por '!' somente se ela consistir apenas da letra 'a'.

javascriptlet str = 'aaa';
let res = str.replace(/^a+$/g, '!');

Como resultado, o seguinte será armazenado na variável:

javascript'!'

Problemas práticos

Задание 1

Dada a string:

javascriptlet str = 'abc def xyz';

Escreva uma expressão regular que encontre a primeira substring de letras.

Задание 2

Dada a string:

javascriptlet str = 'abc def xyz';

Escreva uma expressão regular que encontre a última substring de letras.