Não entendi o comportamento do ? juntamente com um quantifier. Na aula tem exemplos mas não entendi a lógica entre eles, alguém poderia me explicar por favor?
Não entendi o comportamento do ? juntamente com um quantifier. Na aula tem exemplos mas não entendi a lógica entre eles, alguém poderia me explicar por favor?
Olá, Kelvym.
O ? é um meta caracter da regex que significa que um grupo, caracter ou conjunto que estiver antes dele é opcional. Por exemplo, se estivermos fazer um validação de uma campo que pode receber um número de telefone fixo ou de celular, deixaremos nossa regex assim: 9?[0-9]{4}-[0-9]{}4
O interrogação que colocamos depois do primeiro 9 diz que ele é opcional.
Desculpa a demora pra responder, mas...
Eu entendi sua explicação, porém não estou conseguindo entender o porque ocorro os seguintes comportamentos apontados na aula:
alvo:
<h1 class="text-left">Expressões regulares</h1>
Expressão: <h1.+?>
Resultado: <h1 class="text-left">
Expressão: <h1.{1,10}?
Resultado: Apenas 1 caracter sendo selecionado(além do <h1)
Isso está bem confuso pra mim.
Olá. Agora minha vez de pedir desculpa pela demora.
O a primeira expressão <h1.+?>
irá pegar qualquer h1 seguido de qualquer conteúdo que tenha ao menos um caracter mas isso pode ser opcional e tem que finalizar com o sinal de maio >
.
A segunda expressão <h1.{1, 10}?
irá pegar a tag h1 que tiver qualquer caracter dentro dela entre 1 e 10 caracteres, lembrando que isso é opcional.
Espero que ajude :-)
Hmm, acho que entendi agora. To fazendo alguns testes tendo em mente o que você explicou e está fazendo mais sentido pra mim.
Vlw, obrigado!
Por nada Kelvym. Tento mais dúvidas só postar aí :-)