Wort aus string auslesen?

Guten Tag,

ich suche eine Möglichkeit einen String in Java auszulesen und nur diesen Teil rauszunehmen.

Folgende Situation:
Ich möchte gerne aus einem Textdokument

Finden und die rate zurückgeben lassen.

Was ich bisher habe ist, dass er automatisch die Zeile findet und die Zeilennummer in einem int speichert.

Doch jetzt möchte ich gerne NUR die Zahl haben (von rate=…)
Da sich die Stellen immerwieder ändern, kann ich nicht sagen „Position X bis X auslesen“.

Hoffe ihr könnt mir helfen, danke

Ich möchte gerne aus einem Textdokument

Finden und die rate zurückgeben lassen.

Es gibt in java.util nen StringTokenizer. Dem kann man nen Suchstring übergeben und ein Trennzeichen und bekommt dann mit der Methode next() immer den nächsten Substring. Finden sich ein zwei fix ne Menge Codebeispiele zu. Entweder trennst Du dann nach ‚=‘ und nimmst Dir das zweite oder nach dem Leerzeichen, je nach dem, ob diese Konstellation in allen Suchstrings vorhanden ist.

ich suche eine Möglichkeit einen String in Java auszulesen und
nur diesen Teil rauszunehmen.

Folgende Situation:
Ich möchte gerne aus einem Textdokument

Finden und die rate zurückgeben lassen.

Wenn das ganze Dokument XML ist, kannst Du Dir sonst auch mal die JDOM-Bibliothek angucken. Die parst das Dokument, und Du kannst dann z. B. das erste „Cube“-Element suchen und nach dem Attribute „rate“ fragen. Das ist deutlich sauberer, als XML mit String-Funktionen zu verarbeiten.

Alternativ gäbe es noch reguläre Ausdrücke. Der Code hier sollte die Rate aus einem String auslesen:

String myFileContent = „…“;
Pattern p = Pattern.compile("]+rate=’([^’]+)’");
Matcher m = p.matcher(myFileContent);

while (m.find())
System.out.println(m.group(1));

Aber wie gesagt, wenn das valides XML ist, ist Parsen eleganter. Obige Codezeilen würden z. B. auch einen finden, der auskommentiert ist ().

Viele Grüße
Florian

Ganz simpel würde ich auch zu Regex raten. Wenn das Dokument aber Gemeinheiten enthält, wie tanzflo schon sagte, solltest Du wirklich komplett parsen und anschliessend den entsprechenden Knoten raussuchen.