Come si ordina un elenco di versioni in Ruby? Ho visto cose di tipo naturale, ma questo è un passo oltre.Ordinamento versione (con alfa, beta, ecc.) In rubino
ingresso è un mucchio di stringhe in questo modo:
input = ['10.0.0b12', '10.0.0b3', '10.0.0a2', '9.0.10', '9.0.3']
ho quasi posso farlo con la naturally gemma:
require 'naturally'
Naturally.sort(input)
=> ["9.0.3", "9.0.10", "10.0.0a2", "10.0.0b12", "10.0.0b3"]
Problema: 10.0.0b3 è ordinato dopo 10.0.0b12; 10.0.0b3 dovrebbe essere il primo.
Qualcuno ha un modo che funziona? Anche altre lingue sono utili!
Queste stringhe di versione estremamente atipiche. Non è probabile che tu trovi una soluzione pronta per l'uso; dovresti scrivere il tuo. – meagar
L'ho cambiato per usare il Versioning semantico. Questo è più tipico. –
@MusashiAharon Questo non è abbastanza Versioning semantico. Per questo si vorrebbe che il 'b12'' b3', ecc sia preceduto da un '-'. – Ajedi32