0 votos

AppleScript : repite con cada elemento desde el final hasta el principio

Estoy tratando de hacer una repetición de una lista, pero me gustaría repetir desde el último elemento de la lista hasta el más nuevo en lugar de la otra manera.

Cómo puedo hacer eso sabiendo que esto hará en el orden equivocado :

   repeat with each from 2 to count of items of creationDate
        --
    end repeat

Lo que intento hacer es devolver el número de artículo del último artículo que contiene el texto "lo que sea"

Actualización

repeat with anItem from 1 to count of items of (reverse of creationDate)
    set xitemOnMyList to item anItem of (reverse of xID) as text
    set trustitemOnMyList to item anItem of (reverse of trustSource) as text
    set dateitemOnMyList to item anItem of (reverse of creationDate) as text

    if xID contains xNumber and trustitemOnMyList is equal to "whatever" then
        set myResult to dateitemOnMyList
    else
        --
    end if

end repeat

No se puede hacer el punto 14 del reverso de

0 votos

Las listas tienen un reverse para que puedas hacer algo como repeat with anItem in (reverse of someList)

0 votos

Parece que funciona pero siempre me sale un error "No se puede hacer el elemento 14 de la inversa de"

0 votos

En realidad creo que el error está en otro lugar dentro de mi código, estoy echando un vistazo pero el orden inverso real está funcionando, por favor envíe como una respuesta para que pueda validarlo

3voto

red_menace Puntos 111

No has mencionado el contenido ni cómo interactúan tus listas, pero hay algunas formas de empezar desde el final de una lista:

set creationDate to {"now", "later", "yesterday", ”whatever", "never"}

repeat with anItem from (count creationDate) to 1 by -1 -- step backwards
  log "Item:  " & item anItem of creationDate
  log "Index: " & anItem
end repeat

repeat with anItem from -1 to -(count creationDate) by -1 -- negative index
  log "Item:  " & item anItem of creationDate
  log "Index: " & anItem
end repeat

repeat with anItem from  -(count creationDate) to -1 — reverse items
  log "Item:  " & item anItem of (reverse of creationDate)
  log "Index: " & -anItem -- normal index into the original list
end repeat

repeat with anItem from 1 to (count creationDate) -- reverse items
  log "Item:  " & item anItem of (reverse of creationDate)
  log "Index: " & -anItem -- negative index into the original list
end repeat

El tipo de indexación y el tamaño de las listas utilizadas deben ser coherentes en varias listas o se pueden producir errores con elementos fuera de los límites.

0 votos

En mi caso me doy cuenta que la primera columna siempre tiene dígito único en toda la ocurrencia, es que creé una nueva lista con una sentencia if, gracias por tu respuesta aunque probaré esto.

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