RegEx XIX: Quantificadores gulosos vs. preguiçosos
Por padrão, os quantificadores como * e + são "gulosos", o que significa que tentam corresponder ao máximo possível de caracteres. Usar ? depois do quantificador faz com que ele seja "preguiçoso": o que significa que ele parará assim que encontrar uma correspondência.
txt = "1232 2133424 809890 548"
re.findall(".+\s", txt) ➞ ["1232 2133424 809890 "]
re.findall(".+?\s", txt) ➞ ["1232 ", "2133424 ", "809890 "]Escreva uma expressão regular para encontrar todos os comentários HTML no texto. Você deve usar quantificadores preguiçosos na sua expressão.
txt = "... <!-- My -- comment test --> .. <!----> .. "
pattern = "yourregularexpressionhere"
re.findall(pattern, txt) ➞ ["<!-- My -- comment test -->", "<!---->"]Notas
- Os comentários HTML são formatados como
<!--this is an HTML comment-->. - Você não precisa escrever uma função, apenas o padrão.
- Não remova
import redo código. - Encontre mais informações sobre RegEx e quantificadores nos Recursos.
- Você pode encontrar todos os desafios desta série na minha coleção Basic RegEx.