Alternative zu split()

Status
Nicht offen für weitere Antworten.

Grasfrosch

Mitglied
Ich verwende die Methode split(regex) um einen String nach 'regex' zu durchforsten und alle Substringe welche in einem 'regex' eingeschlossen sind zurückzugeben (bekomme also ein String[]).

Nun existiert diese Methode erst ab Version 1.4, nachträglich soll das Applet aber auch 1.3 kompatibel sein :roll: .

Kennt per Zufall jemand eine entsprechende Implementation, mit welcher ich die Methode split() ersetzen kann? Ich habs ja versucht, scheitere aber bei der Initialisierung des Rückgabewertes (ist ja ein String[] und hat somit feste grösse) 😳

Code:
  private Vector splitString(String fullString, String regex) {
    Vector stringV = new Vector();
    int length = fullString.length();
    int index = 0;
    int y = 0;
    String tempS = "";

    while (length > index) {
      if (fullString.charAt(index) == regex.charAt(0)) {
        stringV.add(tempS);
        tempS = "";
        y++;
      }
      else {
        String g = fullString.substring(index, index + 1);
        tempS = tempS.concat(g);
      }
      index++;
    }
    return stringV;
    //return String s[] = ???????
  }

Der Vector wird richtig erstellt. Aber ich brauche einen String[] als Return-Wert!

Irgendwelche Ideen? ???:L
 
Wie wärs mit einem StringTokenizer:

Code:
private String[] split(String fullString, String regex) {
  StringTokenizer str  = new StringTokenizer(fullString, regex);
  String[] buffer = new String[str.countTokens()];
   for (int n=0;str.hasMoreTokens();n++)
      buffer[n] = str.nextToken();
   return buffer;
}
 
Ach ja übrigens...

Mit dem Vector wärs schon auch gegangen einfach so:

Code:
return (String[]) stringV.toArray(new String[stringV.size()]);
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben