Hallo Danny,
es soll ein Teilstring in Anführungszeichen ermittelt werden. Zugelassen sind " und ' wobei innerhalb der Anführungszeichen diese auch maskiert vorkommen können. Bsp:
<a href="foo.html" title="das ist ein "Test" id="test">
ich habe mal ein wenig rumgespielt. Jetzt bin ich aber zu müde, ab hier kannst du weiter machen.
<?php error_reporting(E_ALL);
header("Content-type: text/plain ");
define ( 'nl' , "\n" ) ;
// ---------------------------------
$html ='<a href = "foo.html" title= "das \\ist ein \"Test" id ="test" blub = "" >' ;
echo $html . nl.nl ;
$pattern = '#(\S+)\s*=\s*(""|"\\\\"|"[^"\\]"|"[^"].*?[^\\]")#s';
echo '$pattern = '.$pattern .nl.nl ;
preg_match_all ($pattern , $html , $matches ) ;
print_r ( $matches );
/* Ausgabe
Array
(
[0] => Array
(
[0] => href = "foo.html"
[1] => title= "das \ist ein "Test"
[2] => id ="test"
[3] => blub = ""
)
[1] => Array
(
[0] => href
[1] => title
[2] => id
[3] => blub
)
[2] => Array
(
[0] => "foo.html"
[1] => "das \ist ein "Test"
[2] => "test"
[3] => ""
)
)
*/
?>
Gruß
Christian