Ok, więc to pierwszy raz, kiedy tu wysyłam, więc weź mnie ze sobą.Zamiana pozycji elementów w tablicy w java?
Mam nazwę w formacie "Smith, Bob I"
i muszę zmienić ten ciąg, aby przeczytać "Bob I. Smith"
. Wszelkie pomysły, jak to zrobić?
Jest to jeden ze sposobów, w jaki próbowałem, i chociaż wykonuje swoją robotę, wygląda całkiem nieźle.
public static void main(String[] args) {
String s = "Smith, Bob I.", r = "";
String[] names;
for(int i =0; i < s.length(); i++){
if(s.indexOf(',') != -1){
if(s.charAt(i) != ',')
r += s.charAt(i);
}
}
names = r.split(" ");
for(int i = 0; i < names.length; i++){
}
System.out.println(names[1] +" " + names[2] + " " + names[0]);
}
+1 za wysiłek – Venki
Twój algorytm będzie prawdopodobnie zależeć trochę na jakiego rodzaju przepisów dotyczących wprowadzania masz, ponieważ może to wymagać dodatkowych czynności, aby obsłużyć szczególne przypadki lub pozwalają na różnych skrótów, ponieważ dane są spójne. Np: czy zawsze jest obecny środkowy inicjał początkowy, czy też czasem nie będzie tam ani drugie imię, ani pełne drugie imię. A co z tytułami takimi jak II lub Jr? Czy wszystkie imiona mają pierwszą I ostatnią? Itd. –
Dobra, to jest narzędzie, które zbiera nazwy, ponieważ są one dostarczane z niestrukturalnych tekstów lub są zbierane przez skrobanie sieci. Pojawiają się we wszystkich rodzajach formatów, np. "Bob I. Smith", "Smith, Bob I", "Bob Smith", "Smith Bob". Muszę opracować sposób na nadanie wszystkim imionom jednolitego formatu, który na razie jest albo "Pierwszy M. Ostatni", albo "Ostatni, pierwszy M" – Lambda