my purpose is to match
tre
and its preceding characters.
Bem, no seu exemplo The tree is looking awesome with leaves and flowers.
a palavra fragmento tre
não é precedida por nenhum caractere na mesma palavra, ela é precedida por caracteres que fazem parte de palavras anteriores. Isso faz com que sua pergunta pareça um pouco ambígua.
Para corresponder a qualquer caractere seguido por "t", "r" e "e", usaria .*tre
.
Para corresponder "t", depois "r" e "e", seguido por qualquer caractere, usaria tre.*
.
Para combinar uma palavra começando com "t", em seguida, "r", em seguida, "e", eu usaria tre\w*
My regular expression is [tre*]
Isso corresponde a um único caractere, o caractere correspondido pode ser qualquer um dos quatro especificados. Inside []
o metacaractere *
é tratado apenas como um caractere comum (porque essa é a maneira mais útil para ser tratado nesse contexto).
Os colchetes []
são para especificar um caractere a ser encontrado no texto que pode ter várias possibilidades. Por exemplo, se você quiser corresponder uma das palavras Tree
ou tree
, poderá usar [Tt]ree
, o que significa corresponder a um caractere que seja T
ou t
seguido por um segundo caractere que seja r
seguido por um terceiro caractere que é e
seguido por um quarto caractere que é e
.
Você pode corresponder Tree
e tree
usando .ree
, mas .
corresponderá a qualquer caractere único, então o RE também corresponderia a free
e outras palavras que você talvez não queira. []
fornece um meio para você ser mais específico que .
ao especificar os valores de um único caractere no texto que você deseja corresponder