Bir sayı içeren bir dize sıralama
Dizeleri, ancak bir bükülme ile karşılaştıran Java Benzer bir sınıf yazmak istiyorum. Eğer bu iki dize bu karşılaştırma aynı başında ve sonunda dize aynı, orta kısmı farklı bir tamsayı, daha sonra karşılaştırmak dayalı sayısal değerler, bu tamsayılar. Örneğin, aşağıdaki dizeleri gösterilen konum için bitirmek istiyorum:
- aaa
- bbb ccc 3
- bbb 12 ccc
- ccc 11
- ddd
- eee 3 jpeg2000 eee ddd
- eee 12 jpeg2000 eee ddd
Gördüğünüz gibi, düzenli ifadeler herhangi bir tamsayı patlak kullanamam yani string içinde başka bir tamsayı olabilir. Düşünüyorum yürümeye dizeleri başına kadar bulmam biraz uymuyor, sonra yürüyüş ölene kadar buluyorum biraz uymuyor, ve karşılaştırarak bit orta düzenli ifade "[0-9] ", ve eğer karşılaştırır, sonra bir sayısal karşılaştırma, başka bir sözcük karşılaştırma.
Daha iyi bir yolu var mı?
GüncellemeDizedeki diğer numaralar, maç olabilir onlar için boşluk yok, ya da farklı olanlar boşluk garanti edebilirim sanmıyorum.
CEVAP
Web sitesinden
"İnsanlar yazılım farklı rakamlarla dizeleri sıralamak. Sıralama algoritmaları çoğu insan mantığına aykırı bir sipariş üreten ASCII değerleri karşılaştırın. Burada bunu düzeltmek için nasıl."
Edit: Burada o siteden. Java Comparator Implementation bir bağlantı
Nasıl dize (sayı) Apache POI ile Excel...
Nasıl bir JSON dize yeni satır karakte...
Twig şablon HTML içeren bir dize görün...
C nasıl bir sıralama için bir dize dön...
.NET sabit boşluk içeren bir dize Biçi...