2017-09-08 1 views
0

j'ai presque vu juste, mais ma commande sera comme çaComment puis-je obtenir ma liste dans l'ordre correct

1.1.0.98 
1.1.0.65 
1.1.0.134 
1.1.0.103 

il semble donc que lorsqu'un troisième numéro est sur elle passe en dessous de la seconde.

Code

def url = "http://mylink/".toURL().text 
def root = new XmlSlurper().parseText(url) 

def mylist = [] 
     root.data.'content-item'.each{node -> 
    mylist << node.resourceURI.text() + node.relativePath.text().getAt(1..-2).replaceAll('/', '-').plus('.nupkg') 
} 

def result = [] 
mylist .reverseEach { 
result << it 
} 

result 
+0

Wh à la sortie attendue? – niksofteng

+5

Je ne sais pas quelle langue c'est, mais ce n'est pas PowerShell. – Raziel

+0

Désolé étiquette erronée. Changé pour groovy –

Répondre

0

Aucune idée de ce que vous demandez, mais vous pouvez rendre votre code un beaucoup plus simple ...

Cela devrait fonctionner:

def result = root.data.'content-item'.collect { node -> 
    node.resourceURI.text() + 
     node.relativePath.text()[1..-2].replaceAll('/', '-') + 
     '.nupkg' 
}.reverse() 

pas besoin de myList ou reverseEach

+0

thx. C'était bien. Le ting de tri est toujours le même. Je pense qu'il ne trie que 1-99 à droite et puis 100- ci-dessus obtenir ci-dessous –

+0

Sans un exemple xml pour le tester, je ne sais pas de quoi vous parlez, désolé :-( –