Validación del texto de entrada de AppleScript

0

¿Cómo validaría este patrón? 2 dígitos seguidos del apellido, básicamente cualquier longitud de letras. Apple script no usa expresiones regulares, ¿correcto?

Necesito validar la entrada del usuario y todas las ID de usuario de los estudiantes en mi campus están en ese formato.

repeat

    display dialog "Enter  user name:  (like 99smith)" default answer "" giving up after 40

    set {userName, returnedButton, gaveupBoolean} to the result as list
    -->{"some text", "OK", false}

    if userName is not "" then
        set CheckName to text 1 thru 2 of userName & " --test"

        display dialog CheckName & " -- 1"

        if class of CheckName is number then

            display dialog CheckName & " -- 2"
            exit repeat
        else
            display dialog "Name does not start with 2 digits  " & CheckName & " -- " & userName
        end if

    end if

end repeat
    
pregunta Len 20.06.2014 - 17:58

1 respuesta

1

¿Puedes enfocarlo así?

Toma los dos primeros caracteres:

--prueba para ver si son números.
- > si no se devuelve inválido.

Toma los caracteres restantes:

--prueba la longitud mínima?

- > si no devuelve inválido.

: pruebe cada carácter para ver si son números.

- > Si algún carácter es un número devuelto inválido.

Editar para agregar:

En lugar de verificar si CheckName es un número, intente convertirlo en un número:

try
    set CheckName to CheckNameDigits as number
on error
    display dialog CheckName & " is not a number"
end try
    
respondido por el AllInOne 20.06.2014 - 19:33

Lea otras preguntas en las etiquetas