Construtores de Alternância
A tabela a seguir lista caracteres especiais que modificam uma expressão regular para permitir uma correspondência.
Alternância de Construtores |
Definição |
---|---|
| |
Coincide com qualquer um dos termos separados pela caractere | (barra vertical); por exemplo, cat|dog|tiger.A correspondência mais à esquerda ganha. |
(?(expressão de ) yes|no) |
Coincide com a parte "yes" se a expressão corresponder neste ponto; caso contrário, corresponde a parte "no".A parte "no" pode ser omitida.A expressão pode ser qualquer subexpressão válida, mas ela é transformada em uma declaração de largura zero, portanto, essa sintaxe é equivalente a (?(?=expressão) yes|no) .Observe que se a expressão é o nome de um grupo nomeado ou um número de grupo de captura, a alternância de construtores será interpretada como um teste de captura (descrito na próxima linha da tabela).Para evitar confusão nesses casos, você poderá soletrar dentro (?=expressão) explicitamente. |
(?(nome)yes|no) |
Corresponde a parte "yes" se a sequência de caracteres de captura nomeados tiver uma correspondência; caso contrário, corresponde a parte "no".A parte "no" pode ser omitida.Se o nome fornecido não corresponder ao nome ou número de uma grupo de captura usado nesta expressão, a alternância de construtores é interpretada como uma expressão de teste (descrito na linha anterior desta tabela). |