SEO-Software von Suchmaschinenoptimierung.de

[Java] Stringzerlegung

(hier klicken, um zum Original Thread zu gelangen)
Brik
Hey,

ich habe viele Zeilen eines festes Aufbaus:

code:
1:
2:
3:
76,117,183			# 7 striking blue			bright blue
189,190,198			# 8 light blue grey			light blue grey
94,112,114			# 9 hoods				light


Die ersten drei Zahlen sind die RGB-Werte einer Farbe, gefolgt von vier Zeilenvorschüben, einer Raute, einem Leerzeichen, der ID, und einem Namen - seht ihr ja selber.
Jetzt möchte ich aus diesen einzelnen Zeilen die einzelnen Angaben möglichst elegant extrahieren und weiterverarbeiten.

In PHP gebe es dafür die Funktion preg_split, um eine Zeichenkette anhand eines gegebenen regulären Ausdruckes zu zerlegen - allerdings habe ich nach langer Recherche keine vergleichbare Implementierung in Java gefunden.
Alles, was Java bietet, ist eine Zerlegung anhand fester delimiter - in welcher Form die auch immer angegeben sein mögen. Eine komplette Zerlegung anhand des Ausdruckes fehlt mir jedoch bisher.

Gibt es eine solche Funktion oder hat jemand eine andere Idee für eine elegante Lösung? (kein Arbeiten mit vier verschiedenen Arrays als Ergebnis mehrerer String.split()- oder StringTokenizer-Aufrufe)

Grüße
brik
moonsword
was ist mit normalen RegExen? also nicht Splitten, sondern mit normalen Regexen auslesen? ist ja immer das gleiche...

regex müsste dann ungefähr so aussehen:
code:
1:
(\d+),(\d+),(\d+)\t+\#\s(\d+)\s([a-zA-Z\s]+)\t+([a-zA-Z\s]+)

lässt sich sicher noch vereinfachen...vielleichst ist auch ein fehler drin -.-

weil RegExen gibt es soweit ich mich erinnere in Java auch....


edit: achja....hab grad ein bisschen nach Regular Expressions in Java geschaut...und es sieht so aus, als ob split auch RegExen kann
Zitat:
myString.split("regex") splits the string at each regex match. The method returns an array of strings where each element is a part of the original string between two regex matches. The matches themselves are not included in the array. Use myString.split("regex", n) to get an array containing at most n items. The result is that the string is split at most n-1 times. The last item in the string is the unsplit remainder of the original string.

(Quelle: http://www.regular-expressions.info/java.html)
auf der Seite steht auch, wie du die RegExen mit match verwendest...das wäre für das obere großes Grinsen

edit: preg_split zerlegt dir die funktion auch nur in einzelne teile...ich weiss ja nicht, wie du mit dem split gleich an die daten kommen willst...dafür ist eigentlich ein preg_match in php besser...und das ist mit String.match() in Java vergleichbar
(hier klicken, um zum Original Thread zu gelangen)



Tipp: Ranking-Konzept.de - Das SEO-Forum (Forum rund um die Suchmaschinenoptimierung) der artaxo AG.
Das große Versicherungs ABC von Versicherung.de - mit allen Aspekten der Computerversicherungen!
Fan-Foren.de, die große Community mit Musikforum ist ab sofort online.