Ejemplos de scripts para validadores personalizados

Aquí encontrará algunos validadores personalizados de script de ejemplo, incluidos:
El siguiente script es un validador personalizado básico que valida un identificador de datos de cinco dígitos mediante la recuperación del quinto dígito y los primeros cuatro dígitos, su asignación a variables y la comparación de estos valores con respecto a la longitud de datos esperada.
Validador personalizado de script básico
Parámetro
Descripción
Patrón
\d{5}
Normalizador
No hacer nada
Script personalizado
$s1 = getStringValueAt($normalizedMatch, 0x4,1); // Get the 5th digit $s2 = getStringValueAt($normalizedMatch, 0x0,4); // Get the first 4 digits $size1 = datalength($s1);// Calculate the length; it should be 1 $size2 = datalength($s2);// Calculate the length; it should be 4 assertTrue($size1 == 1); // Check if size = 1 assertFalse($size2 != 4); // Check if size is anything other than 4
El siguiente script personalizado valida una cadena de 10 caracteres con el formato LL/MM/DD/AAAA. Los primeros dos caracteres son las iniciales de la persona y se excluyen de la validación. El resto de los dígitos se guardan y suman en variables separadas, computadas por un multiplicador. A continuación, se comparan para garantizar que se ajustan a un día (menor que 32), un mes (menor que 13) y un año (menor que 2051) correctos.
Validador personalizado de script de 10 caracteres
Parámetro
Descripción
Patrón
\l{2}\d{8}
Normalizador
Dígitos y letras
Script personalizado
$m1 = getIntegerAt($normalizedMatch, 0x2, 1); $m2 = getIntegerAt($normalizedMatch, 0x3, 1); $d1 = getIntegerAt($normalizedMatch, 0x4, 1); $d2 = getIntegerAt($normalizedMatch, 0x5, 1); $y1 = getIntegerAt($normalizedMatch, 0x6, 1); $y2 = getIntegerAt($normalizedMatch, 0x7, 1); $y3 = getIntegerAt($normalizedMatch, 0x8, 1); $y4 = getIntegerAt($normalizedMatch, 0x9, 1); $m1 = multiply($m1, 10); $d1 = multiply($d1, 10); $y1 = multiply($y1, 1000); $y2 = multiply($y2, 100); $y3 = multiply($y3, 10); $Day = Add($d1, $d2); $Month = Add($m1, $m2); $Year = Add($y1, $y2, $y3, $y4); assertTrue($Day > 0); assertTrue($Day <= 31); assertTrue($Month > 0); assertTrue($Month <= 12); assertTrue($Year >= 1910); assertTrue($Year <= 2050);
El siguiente validador personalizado de script se puede usar para verificar la coincidencia de un número de Id. de Turquía. El Id. de Turquía es un número de 11 dígitos. El primer dígito no puede ser cero. El décimo y el undécimo dígito son dígitos de comprobación para detección de errores.
Validador personalizado turco de script del Id. de Turquía
Parámetro
Descripción
Patrón
\d{11}
Normalizador
Dígitos solamente
Script personalizado
$k1 = getIntegerAt($normalizedMatch, 0x0, 1); $k2 = getIntegerAt($normalizedMatch, 0x1, 1); $k3 = getIntegerAt($normalizedMatch, 0x2, 1); $k4 = getIntegerAt($normalizedMatch, 0x3, 1); $k5 = getIntegerAt($normalizedMatch, 0x4, 1); $k6 = getIntegerAt($normalizedMatch, 0x5, 1); $k7 = getIntegerAt($normalizedMatch, 0x6, 1); $k8 = getIntegerAt($normalizedMatch, 0x7, 1); $k9 = getIntegerAt($normalizedMatch, 0x8, 1); $c1 = getIntegerAt($normalizedMatch, 0x9, 1); $c2 = getIntegerAt($normalizedMatch, 0xA, 1); $iOdds = add($k1, $k3, $k5, $k7, $k9); $iEvens = add($k2, $k4, $k6, $k8); $iOddsMltSeven = multiply($iOdds, 7); $iEvensMltNine = multiply($iEvens, 9); $iOddsMltEight = multiply($iOdds, 8); $iMidSum = add($iOddsMltSeven, $iEvensMltNine); $iCheck1 = mod($iMidSum, 10); assertTrue($iCheck1 == $c1); $iCheck2 = mod($iOddsMltEight, 10); assertTrue($iCheck2 == $c2);