possessivePattern
Padrão que casa o máximo possível e nunca devolve caracteres.
Categoria: Language Fundamentals > Data Types
Sintaxe
p = possessivePattern(pat)
Casa pat de forma gulosa, sem retroceder.
Descrição
Padrões repetitivos comuns podem recuar: em lettersPattern + "b", a parte das letras abre mão do b final para que o padrão inteiro case. Um padrão possessivo mantém tudo o que tomou. Por isso possessivePattern(lettersPattern) + "b" nunca casa, pois as letras já consumiram o b.
A correspondência possessiva serve principalmente para ganhar velocidade e proibir casamentos alternativos indesejados. É o equivalente dos quantificadores possessivos (*+, ++) das expressões regulares.
Argumentos de entrada
pat- Um padrão ou texto.
Argumentos de saída
p- Um objeto
pattern.
Exemplo
matches("aab", lettersPattern + "b")
matches("aab", possessivePattern(lettersPattern) + "b")
Saída
ans = logical
1
ans = logical
0
Veja também
pattern lettersPattern optionalPattern regexpPattern matches