Este método realiza a normalização de uma string UTF-8 para uma outra Forma Normal selecionada.
Atualmente, na normatização da Unicode Consortion, temos 4 diferentes tipos de formas normais para a UTF-8 que são: NFD,NFC, NFKC e NFKD.
Sintaxe:
oUni1 := tUnicode():New()
oUni1:Normalize( <sInput>, <sConvStr>, <CONVMODE_FLAG> )
A entrada desta função aceita a seguinte parametrização:
Parâmetro de Entrada | Referência | Obrigatório | Descrição |
---|---|---|---|
sInput | X | String, no formato UTF-8 para ser normalizada | |
sConvStr | X | X | Variável string passada por referência para armazenar o a string normalizada |
CONVMODE_FLAG | X | Flags para configuração da normalização |
O parâmetro CONVMODE_FLAG, pode ser utilizada as seguintes constantes numéricas
Constante | Valor Numérico |
---|---|
NORMALFORM_TONFC | 0 |
NORMALFORM_TONFD | 1 |
NORMALFORM_TONFKC | 2 |
NORMALFORM_TONFKD | 3 |
Retorno
Em caso de sucesso, se a string de entrada for válida, o retorno será 0 e caso houver uma string de entrada inválida, o retorno será -1.
Exemplo
#define NORMALFORM_TONFC 0 #define NORMALFORM_TONFD 1 #define NORMALFORM_TONFKC 2 #define NORMALFORM_TONFKD 3 // String: "Soluções e ações" na NFD Local sInput := "536F6C7563CCA76FCC8365732065204163CCA76FCC83657300" // String: "Soluções e ações" na NFC Local sExpected := "536F6C75C3A7C3B5657320652041C3A7C3B5657300" Local sConvStr := '' // Conversões para o formato sInput := hex2asc(sInput) sExpected := hex2asc(sExpected) // Conversão da forma normal do UTF-8 oUni1 := tUnicode():New() oUni1:Normalize( sInput, sConvStr, NORMALFORM_TONFC ) // Compara para verificar se está de acordo com o esperado IF (sConvStr <> sExpected) Return -1 ELSE Return 0 ENDIF
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas