HTML Parser - Reg_Ex - Problem

fyn

Grünschnabel
Hallo. Ich hoffe hier hat jemand einen guten Tipp für mich. Ich habe mir eine kleine funktion zum Parsen von HTML-Daten gemacht. Sollte vielleicht dazu sagen, dass ich ein ziemlich blutiger Anfänger bin. Die sieht so aus:
PHP:
function find_string($start, $ende, $string){
		preg_match("%".$start."(.*|[a-zA-Z0-9]*)".$ende."%Us", $string, $suche);
		return $suche[1];
    }
Das funktioniert eigentlich auch ganz gut. Nun rufe ich die Funktion in einer Schleife auf
PHP:
    foreach ($lines as $line_num => $line){
    	$string = $line;
    	$start = "blank";
    	$ende = "td";
    	$start_func = find_string($start, $ende, $string);
    	if(strlen($start_func) > 0){
    		$ergebnis_array[] = $start_func;
    	}
    }
Das Array beihaltet auch Daten, aber leider nicht mehr das, was ich gerne hätte. Verstehe es einfach nicht. Mit anderen $start und $ende - Inhalten funktioniert es wunderbar.

Übergebe ich entsprechende Zeile "manuel", so wird erfolgreich gefunden, was ich such:
PHP:
    $teststring = 'target="_blank">1:1</a></td>';
    $start = "blank";
    $ende = "td";
    $regreg = findstring($start, $ende, $teststring);
    echo "Just4Debug ".$regreg;

Die Übergabe der einzelnen Zeilen aus der geparsten HTML-Datei habe ich überprüft. Sie scheint zu funktionieren, wie sie soll. Sonst würden die anderen Ergebnisse ja auch nicht kommen. Für mich unverständlich, warum es mit der manuellen Übergabe funktioniert.

Hat vielleicht jemand eine Idee?


Vielen Dank für eure Hilfe...
 
Zuletzt bearbeitet:
Zurück