Considerações sobre Desempenho ao Utilizar Expressões Regulares

Você deve ter atenção ao especificar expressões regulares: algumas formas de expressão regular podem envolver uma grande quantidade de trabalho para localizar a melhor correspondência, prejudicando o desempenho. Outras expressões podem produzir um resultado inesperado.

Por exemplo, para corresponder texto até e incluindo um caractere delimitador ';' não utilize o padrão ".*;" porque ele corresponde até o último caractere ';' na mensagem, incluindo quaisquer caracteres ';' anteriores no texto correspondente. Em vez disso, você deve utilizar o padrão "[^;]*;".

De forma semelhante, evite utilizar o padrão ".*", porque isso sempre forçará uma pesquisa até o final da mensagem para tentar localizar a melhor correspondência, e isso pode resultar em um desempenho ruim. No entanto, você deve utilizar o padrão ".*" se estiver planejando corresponder todos os dados restantes em uma mensagem.

Para melhor desempenho, evite expressões com repetições aninhadas redundantes, tais como "([0-9]+)*". Tente manter as expressões simples, com critérios de correspondência precisos. Isso evita a necessidade de executar várias pesquisas para a melhor correspondência.

Conceitos relacionados
Modelagem de Mensagens
O Modelo de Mensagem
Formato TDS: Relacionamento com o Modelo Lógico
Tarefas relacionadas
Desenvolvendo Modelos de Mensagens
Trabalhando com um Arquivo de Definição de Mensagem
Trabalhando com Objetos de Modelo de Mensagem
Referências relacionadas
Informações de Referência do Modelo de Mensagens
Propriedades do Objeto de Modelo de Mensagem
Informações adicionais do domínio MRM
Informações Adicionais sobre TDS
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ad09910_