Hilfe bei regular expression

marius24

New Member
Hallo,

ich möchte mithilfe einem PHP Script den Wert von einem hidden input einer Webseite auslesen.

Vielleicht kann mir ja jemand helfen, wie muss die regular expression aussehen, um an den rot markierten Wert zu gelangen?

...
<input type="hidden" name="linkamount" value="40">
...

Gruß Marius
 
Ich finde es meist einfacher (wenn die Rechenleistungsunterschiede nur eine untergeordnete Rolle spielen) ein DOM-Objekt zu benutzen:
http://simplehtmldom.sourceforge.net/
Das ist naemlich genau fuer solche Suchen ausgelegt ;)


Aber der folgende PCRE sollte funktionieren:
Code:
/\<input\ type\=\"hidden\"\ name\=\"linkamount\"\ value\=\"([0-9]{1,})\"\>/

preg_match() gibt dann in $Matches[1] die gewuenschte Zahl als String zurueck, noch mit (int) als Integer casten und fertig =)
 
Solange es
Code:
<input type="hidden" name="linkamount" value="40">
mag das ja gerade noch angehen. Wenn das HTML andere Zeichen als Leerzeichen oder Attributbegrenzer verwendet, gar über mehrere Zeilen geht oder die Attribute eine andere Reihenfolge haben, nutzt das Regex nix mehr.

HTML per RegEx zu Parsen ist sowas von fehlerträchtig. Sowas sollte sich niemand angewöhnen, von manchen PHPlern gibt es schon zu oft schludrigen Code.

Wie d4f schrieb, einen echten HTML- oder XML-Parser verwenden.
 
Back
Top