3 votos

Declaración if de Applescript: mayor que y menor que

¿Puedo ejecutar un script si una variable tiene entre 4 y 6 caracteres solamente?

Por ejemplo

set serialNumber to ""
set theLength to (get length of (serialNumber as text))
if theLength is equal to 1 then
    set serialNumber to "No Serial"
else if theLength > 4 and < 6 then
    ##do this
else if theLength is greater than 6 then
    ## do nothing
end if

Es evidente que esto no funciona: else if theLength > 4 and < 6 then

3voto

user3439894 Puntos 5883

Cambios:

else if theLength > 4 and < 6 then

Para:

else if theLength > 4 and theLength < 6 then

O, ya que preguntaste "¿Puedo ejecutar un script si una variable tiene entre 4 y 6 caracteres solamente?", que es igual a 5 también puede utilizar:

else if theLength = 5 then

En lugar de:

else if theLength > 4 and theLength < 6 then

Sin embargo, si la prueba entre dos números que son ( un o) más entonces un , sólo tiene que utilizar el variable dos veces en la prueba como se muestra arriba.

1 votos

Para completar, y dado que " entre "puede ser inclusivo, vale la pena incluir menor o igual a ( <= o ); mayor o igual que ( >= o ); y no es igual a ( /= o ). Por ejemplo, if theLength 4 and theLength 6 then... atrapa theLength cuando su valor es 4, 5 o 6; y si sabemos que theLength sólo se evalúa a enteros entre 1 y 6 inclusive, esta condicional es equivalente a la última: if theLength 1 and theLength 2 and theLength 3 .

1 votos

@CJK, IMO No está totalmente claro lo que el OP está buscando realmente y por qué lo dejé como está, sin embargo, usted hizo algunos buenos puntos y no dude en editarlos en la respuesta si lo desea.

1 votos

Aunque la pregunta es algo vaga, creo que su respuesta está bien tal y como está. Creo que mis añadidos sirven mejor como comentario, ya que es más bien un inciso, y no una corrección o mejora, propiamente dicha.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X