Ho una stringa di lettere maiuscole e numeri che devo "logicamente" ordinare e archiviare in un campo in un database. Ho ottenuto l'aggiornamento/modifica/richiesta di informazioni nel database capito. Sono in difficoltà con l'ordinamento logico di questa stringa.ordinamento logico di una stringa mista di lettere maiuscole e numeri
Ecco, spero di poterlo spiegare bene.
Dato questo insieme di stringhe AB1 AB2 AB3 A11 AB10
Ho bisogno di questi per alpha specie in questo modo
A11 AB1 AB2 AB3 AB10
al fine per raggiungere questo, credo di aver bisogno di esplodere la stringa. perché attualmente sto cercando di ottenere risultati alfabetici A11 AB1 AB10 AB2 AB3
MODIFICA: Devo essere in grado di memorizzare una stringa esplosa e una stringa non esplosa per poter ordinare con altri programmi.
Ecco come credo che hanno bisogno di essere spezzata e conservati al fine di risolvere alfa
A11 - A 11
AB1 - AB 1
AB2 - AB 2
AB3 - AB 3
AB10 - AB 10
Ci sono alcune costanti. La stringa non sarà più grande di 5 posizioni. Conterrà solo lettere maiuscole e numeri.
Ecco quanto ho ottenuto con il mio codice. gli scrittori bloccano quindi spero in qualche aiuto. Penso di aver bisogno di trovare se inizia con una lettera, poi trovare tutte le lettere consecutive, spostare quelle a sinistra, poi andare a lavorare sul numero, trovare tutti i numeri consecutivi e spostare quelli allineati a destra. Non sono sicuro di come qualcosa di simile a 'A1B1' avrebbe funzionato o ...
for(int ii = 0;ii < sectionString.length() && ii< SECTIONSPACES;ii++){
System.out.print(" Was previous a number? " + isPreviousANumber + "\n");
try{
String tmpString = sectionString.substring(ii,ii + 1);
int positionInCharArray = Integer.parseInt(tmpString);
System.out.printf(" Position " + ii + " is number " + positionInCharArray + "\n");
isPreviousANumber = true;
}catch(Exception e){
System.out.printf(" Position " + ii + " number is not a number " + sectionString.substring(ii,ii) + "\n");
isPreviousANumber = false;
}
}
Impiegare qualcosa di simile all'ordinamento digitale con cifre che hanno la precedenza sulle lettere. – arynaq
Copierò un commento che ho fatto di seguito. Funziona benissimo per ordinarli se posso usare java per ordinarli. Il problema è che i diversi programmi devono ordinarli e per essere compatibili con essi, ho bisogno di "esplodere" la stringa e usare la stringa esplosa per ordinare e mostrare semplicemente il valore normale. Non 'normale' lo so. Nel db ci saranno due campi, uno sarà chiamato sezione e un campo chiamato sort_section. Ha senso? – nkuebelbeck