String parsen

Status
Nicht offen für weitere Antworten.

gauo

Mitglied
Hallo, ich hab eigentlich mehr oder weniger ein einfaches problem, wo ich aber leider
mit meiner Lsg, wegen mangelnder Erfahrung nicht weiter komme,
danke für jede hilfe ^^.

Ich möchte einen String nach zwei Informationen parsen z.B:
<TR class="data"><TD ALIGN=RIGHT>1.</TD><TD><A HREF="search.pl?isin=DE0008402215&
typnr=3">Hannover Rück</A></TD><TD ALIGN=RIGHT><FONT COLOR="#00a000">+6.67</font></TD><TD
ALIGN=RIGHT><FONT COLOR="#00a000">+2.54</font></TD><TD ALIGN=RIGHT>akkumulieren (75) /pics/buy.gif</TD></TR>
Die Informationen die ich extrahieren will sind die isin nud der name.
split("<A HREF=\"search\\.pl?isin=[\\w*]&typnr=3\"") auf diesen String, liefert
mir jedoch einfach nur den String zurück.

Ich hoffe ihr könnt mir helfen ob es eine bessere methode gibt als split um an die informationen zu kommen, aber auf jedenfall was ich falsch gemacht hab beim ausdruck meines regex,
nochmals danke für jede hilfe ^^-
 

gauo

Mitglied
ich habs mitlerweile mit
Code:
                                                    int anfang =line.indexOf("<A HREF=\"search")+24;
                                                    int ende = line.indexOf("&typnr=3\"");
                                                    int endOfName = line.indexOf("</A>");
                                                    String isin =line.substring(anfang, ende);
                                                    String name = line.substring(ende+10,endOfName);
                                                    System.out.println(isin);
                                                    System.out.println(name);
                                                    System.out.println(line);
alternativ gelöst, wer aber trotzdem toll wenn mir wer ne lösung mit regex zeigt ^^, thx
 

0x7F800000

Top Contributor
Code:
"<[A|a][^<>]*[HREF|href]\\p{Space}*=\\p{Space}*[\"|']search\\.pl\\?(?:[^\"']*&)?isin=([^&\"']*)[^<>]*>([^<>]*)</[a|A]>"
:bae:

edit: den witz hab ich mal wegeditiert^^
 

0x7F800000

Top Contributor
Jaa, ich bin eigentlich von genau dieser lösung ausgegangen, und hab die noch ein wenig ergänzt & verbessert.
Dieser Regex reagiert etwa immer noch adequat, wenn die reihenfolge der parameter im get-request vertauscht wird, ansonsten kann es wegen solchen kleinigkeiten recht schnell schiefgehen.

@OP: bastelst du dir grad irgendeinen spider?
Würde mal zur Übung ganz gerne auch endlich mal so ein ding basteln, nur weiß ich nicht, nach welchen sinnvollen sachen ich suchen könnte. ???:L wäre eigentlich schon interessant sowas...
 

gauo

Mitglied
thx an euch beide un besonders aundrey ^^ hab ganz vergessen das code blocks die formatierung beibehalten,was
hier ja mehr oder weniger schlecht ist ^^.

@Topic, hm...ich blick noch nicht ganz durch deinen Regex, aber er liefert mir z.b das hier zurück:
Erst die Beiden Elemente des Arrays von split und dann die ganze zeile:


Split:<TR class="data"><TD ALIGN=RIGHT>1.</TD><TD>
Split:</TD><TD ALIGN=RIGHT><FONT COLOR="#ff0000">-8.25</font></TD><TD ALIGN=RIGHT><FONT COLOR="#00a000">+2.02</font></TD><TD ALIGN=RIGHT>akkumulieren (70) /pics/buy.gif</TD></TR>

Line:<TR class="data"><TD ALIGN=RIGHT>1.</TD><TD>Kuka</TD><TD ALIGN=RIGHT><FONT COLOR="#ff0000">-8.25</font></TD><TD ALIGN=RIGHT><FONT COLOR="#00a000">+2.02</font></TD><TD ALIGN=RIGHT>akkumulieren (70) /pics/buy.gif</TD></TR>


Weshalb ich das alles mache ist eigentlich im moment selbst noch fragwürdig ^^.
An sich will ich erstmal eine Art tool, das einige definierte Seiten nach Analysen, Narchichten oder prognosen
Abklappert und mir diese pro Aktie zusammenfast mit speziellen gewichtungen etc. und mich bei veränderungen benachrichtigt und auf dem Laufenden hält, durch z.b ein Popup aus dem SystemTray.
Unter umständen will ich für mich vielleicht dann die Simulation eines Depots einbauen.

Ich will eventuell bald an der börse einsteigen und wollt mal testen in weit man mit dem halbwegs sturen befolgen von Prognosen, Analysen, empfehlungen und reagieren auf gute Nachrichten(keine ahnung wie ich das machen will)
kommen kann. Wahrscheinlich eher weniger und nur bei großen stückzahlen, da sonst die gebühren überhand nehmen und ich auch allgm an den Prognosen zweifle...zummindest im moment ist es deutlich konfuser und nur schwer gewinn zu machen(hohes risiko :/)
 

0x7F800000

Top Contributor
wieso split!? Dieser Regex ist nicht zum splitten, der ist zum suchen nach den tags und zum rauslesen der informationen:

Code:
//das soll dein html-code sein:
String html=
"<A HREF=\"search.pl?isin=DE0008402215&typnr=3\">Hannover Rück</A><a href =\t\"search.pl?typnr=3&isin=HELL666\">Hannover Pullover</a>";

//dann erstelst du dir einen matcher:
Matcher m=Pattern.compile(
"<[A|a][^<>]*[HREF|href]\\p{Space}*=\\p{Space}*[\"|']search\\.pl\\?(?:[^\"']*&)?isin=([^&\"']*)[^<>]*>([^<>]*)</[a|A]>"
).matcher(html);

//und suchst nach treffern:
while(m.find()) System.out.println("treffer="+m.group(0)+"\t isin="+m.group(1)+"\t inhalt="+m.group(2));

läuft bombensicher.
 

gauo

Mitglied
thx, hab da was verwechselt oda so weiss net mehr ^^...
aber ich hab auch ne neue frage :/...
wie kann ich das was mir javascript beim browser liefert auslesen?...
so bekomm ich ja nur den Quellcode, aber nicht was angezeigt wird oder? :/
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Beowend String zu Date parsen Java Basics - Anfänger-Themen 1
R String index out of range: -1 beim Datei Parsen Java Basics - Anfänger-Themen 15
K String nach bestimmtem Muster parsen Java Basics - Anfänger-Themen 3
K Datentypen String zu Integer parsen Java Basics - Anfänger-Themen 2
M JAVA String schnell parsen Java Basics - Anfänger-Themen 14
L Beliebigen Datentypen aus String parsen Java Basics - Anfänger-Themen 6
J String aus Json File parsen Java Basics - Anfänger-Themen 6
P String parsen Java Basics - Anfänger-Themen 5
Luk10 String (Hexadezimal) zu int parsen Java Basics - Anfänger-Themen 12
J String zu Double parsen (multiple points) Java Basics - Anfänger-Themen 2
G String parsen Java Basics - Anfänger-Themen 3
J int Wert mit getter holen und in String parsen Java Basics - Anfänger-Themen 5
L String zu Enum parsen Java Basics - Anfänger-Themen 8
L String zuverlässig nach Char parsen? Java Basics - Anfänger-Themen 4
S String KeyEvent parsen Java Basics - Anfänger-Themen 2
W String zu Calendar parsen Java Basics - Anfänger-Themen 4
S String Parsen Java Basics - Anfänger-Themen 3
S String parsen Java Basics - Anfänger-Themen 17
W Char in String parsen Java Basics - Anfänger-Themen 6
E Wochentag String parsen Java Basics - Anfänger-Themen 2
M.C.S. String parsen in Java Java Basics - Anfänger-Themen 5
S String nach boolean parsen! Java Basics - Anfänger-Themen 5
P String zu Date bei jedem Tastendruck parsen Java Basics - Anfänger-Themen 3
M String array in Int array parsen und umgekehrt Java Basics - Anfänger-Themen 6
D String in einen primitiven datentypen parsen Java Basics - Anfänger-Themen 3
krgewb String mit Datumsangabe in Long umwandeln Java Basics - Anfänger-Themen 2
D String Groß/Kleinschreibung Ignorieren Java Basics - Anfänger-Themen 4
D Map<String, Integer> sortieren und der reinfolge nach die Glieder abfragen Java Basics - Anfänger-Themen 3
J Ähnlichen String in Liste finden Java Basics - Anfänger-Themen 6
Kartoffel_1 String transformation Java Basics - Anfänger-Themen 7
H String-Operation replace() - Zeichenkette verdoppeln Java Basics - Anfänger-Themen 2
K String analysieren Java Basics - Anfänger-Themen 27
Beowend String auf Satzzeichen überprüfen? Java Basics - Anfänger-Themen 6
H Liste nach String-Länge sortieren Java Basics - Anfänger-Themen 1
String in ArrayList umwandeln Java Basics - Anfänger-Themen 1
I Sass Compiler und String erhalten? Java Basics - Anfänger-Themen 7
Avalon String in Double bzw. Währung konvertieren Java Basics - Anfänger-Themen 6
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18
F Arraylist<String>Ein Wort pro Zeile Java Basics - Anfänger-Themen 6
J Schlüsselworte Prüfen, ob ein bestimmtes, ganzes Wort in einem String enthalten ist. Java Basics - Anfänger-Themen 6
N String überprüfen Java Basics - Anfänger-Themen 3
E String zerlegen aus args Java Basics - Anfänger-Themen 1
M Long-Typ in String-Änderung führt zu keinem Ergebnis bei großer Zahl Java Basics - Anfänger-Themen 11
Ostkreuz String Exception Java Basics - Anfänger-Themen 8
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
J String Filter Java Basics - Anfänger-Themen 5
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
XWing Randomizer mit einem String Java Basics - Anfänger-Themen 2
D 2D Char Array into String Java Basics - Anfänger-Themen 2
H Cast von Float nach String klappt nicht Java Basics - Anfänger-Themen 12
I Zerlegen von String Java Basics - Anfänger-Themen 3
B Beliebiger String gegeben Suche Datum in String Java Basics - Anfänger-Themen 6
I String Java Basics - Anfänger-Themen 4
I API - zurückgegebener JSON String lesen und in Entity konvertieren Java Basics - Anfänger-Themen 2
H Zu langen String aufteilen - bequeme Methode? Java Basics - Anfänger-Themen 14
W String einer Textdatei in einzelne Stringobjekte pro Zeile aufteilen Java Basics - Anfänger-Themen 14
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
M Kommandozeilenparamter als EINEN String werten Java Basics - Anfänger-Themen 5
M RandomAccessFile int und String gleichzeitig in einer Datei Java Basics - Anfänger-Themen 49
M Prüfen on eine Zahl im String enthalten ist Java Basics - Anfänger-Themen 3
Distanz zwischen zwei Zeichenfolgen in einem String bestimmen Java Basics - Anfänger-Themen 5
Substring in einem String finden Java Basics - Anfänger-Themen 13
BeginnerJava String mit vorgegebener Länge und Buchstaben erzeugen/ mit Leerstellen Java Basics - Anfänger-Themen 8
I Eindeutiger String mit maximaler Anzahl an Zeichen Java Basics - Anfänger-Themen 11
H Interface Wieso "List<String> list = new ArrayList<>[…]" Java Basics - Anfänger-Themen 4
JavaBeginner22 Integer in String umwandeln Java Basics - Anfänger-Themen 7
HolyFUT JSON String in Java Object schreiben - Anführungszeichen rauskriegen? Java Basics - Anfänger-Themen 17
Fodoboo131 RegEx- Umwandlung von String in ausführbares Objekt/ Befehl Java Basics - Anfänger-Themen 9
HolyFUT Input/Output Leerzeichen aus String entfernen - klappt nicht! Java Basics - Anfänger-Themen 13
viktor1 Methoden Methode schreiben static void readText (String filename) {...} zu WordHistogramSample.java Java Basics - Anfänger-Themen 13
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
G Position einer unbekannten 3-stelligen-Zahl in einem String finden Java Basics - Anfänger-Themen 15
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
H Erste Schritte Nach einer Zahl n soll n Mal der String untereinander ausgegeben werden Java Basics - Anfänger-Themen 3
X Datentypen String.equals funktioniert nicht Java Basics - Anfänger-Themen 5
Alen123 String wiederholen mit Schleifen Java Basics - Anfänger-Themen 1
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
T String splitten Java Basics - Anfänger-Themen 3
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
J Datentypen String in File konvertieren funktioniert nicht Java Basics - Anfänger-Themen 4
T Platzhalter in String? Java Basics - Anfänger-Themen 14
M String mit Variable vergleichen Java Basics - Anfänger-Themen 9
I String Kombination erstellen anhand fortlaufender Zahl (Vertragsnummer) Java Basics - Anfänger-Themen 13
Fats Waller Compiler-Fehler Kann ich einen String und die Summe zweier Char Werte mittels der println Anweisung ausgeben Java Basics - Anfänger-Themen 4
M Wie kann eine Methode (string) eine andere Methode (void) mit zufälligen int-Werten aufrufen? Java Basics - Anfänger-Themen 4
P9cman Vokale in einem String überprüfen mittels Rekursion Java Basics - Anfänger-Themen 8
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
R Ein Multidimensionales String Array initialisieren und Deklarieren Java Basics - Anfänger-Themen 2
H String Repräsentation eines Rechtecks mit Instanz-Methode Java Basics - Anfänger-Themen 8
Dorfschmied Kartesisches Produkt von zwei Liste mit Hashmaps<String,String> erstellen Java Basics - Anfänger-Themen 4
S String mit Int input vergleichen Java Basics - Anfänger-Themen 5
C String/Char-API Java Basics - Anfänger-Themen 13
U Char zu einem String machen Java Basics - Anfänger-Themen 1
B Anzahl Nullen uns Einsen in String ermitteln Java Basics - Anfänger-Themen 3
T Leerzeichen im String entfernen Java Basics - Anfänger-Themen 6
Jose05 Nullpointerexception bei Umwandlung von String zu int Java Basics - Anfänger-Themen 2
O Ich habe einen String und soll mit matches schauen, ob ein Buchstabe zu einer geraden ANzahl im String vorkommt, wie soll das gehen? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben