Extrahiere einen Teilstring vom Ende eines Strings, bis der erste Platz gefunden wird.

Ich habe eine Zeichenfolge wie folgt:

"De Proost Wim"

Und ich brauche "De Proost" in einer Zeichenfolge und "Wim" in einer anderen

also brauche ich den ersten ', der am Ende eines Strings beginnt.

0
Ich hoffe, Sie gehen nicht davon aus, dass die Vornamen der Personen keine Leerzeichen enthalten. Das wäre ein Fehler.
hinzugefügt der Autor Dawood ibn Kareem, Quelle
Sie können lastIndexOf ('') mit der substring -Methode verwenden.
hinzugefügt der Autor Alexis C., Quelle

3 Antworten

Vielleicht könntest du etwas versuchen wie:

public static String[] extract(final String string){
    assert string != null;
    final int i = string.lastIndexOf(' ');
    if(i == -1)
        return new String[]{string};
    final String first = string.substring(0, i);
    final String last = string.substring(i+1);
    return new String[]{first, last};
}

Verwendung:

final String[] parts = extract("De Proost Wim");

Wert bei jedem Index:

0: "De Proost"

1: "Wim"

0
hinzugefügt

Sie können lastIndexOf verwenden ('') mit dem Teilzeichenfolge Methode:

String s = "De Proost Wim";
int lastIndex = s.lastIndexOf(' ');
String s1 = s.substring(0, lastIndex);
String s2 = s.substring(lastIndex+1);

System.out.println(s1); //De Proost
System.out.println(s2); //Wim

Stellen Sie nur sicher, dass lastIndexOf nicht -1 zurückgibt.

0
hinzugefügt
String str = /*Your-String*/;
String[] subs = str.split(" ");
String strLast = "";
if( subs.length > 1 )
    strLast = subs[subs.length-1];
0
hinzugefügt
Du wirst damit nicht "De Proost" in der ersten Folge bekommen. Sie müssen sie neu zusammenfügen.
hinzugefügt der Autor Alexis C., Quelle
Ja, aber das ist sehr übertrieben für so eine einfache Aufgabe. Mit substring und lastIndexOf reichen 2 Zeilen aus.
hinzugefügt der Autor Alexis C., Quelle
@ZouZou Sie können einen String-Puffer an den Rest der Elemente im Array anhängen.
hinzugefügt der Autor Abhishek Shukla, Quelle
Vereinbart .. str.lastIndexOf (""); ist besser.
hinzugefügt der Autor Abhishek Shukla, Quelle