Problemer med reg.exp.
Jeg har messet rundt med nogle reg.exp. de sidste par dage og jeg er stødt på et problem.Jeg har noget HTML-kode, genereret af en bruger.
Brugeren bruger <img> tags og dem vil jeg gerne have fat i, og ændre på deres attributes. Det gør jeg således:
($row->_tekst er HTML koden)
$pat = "|(<img.*>)|Uism";
$tekst = preg_match_all( $pat, $row->_tekst, $reg );
foreach( $reg[1] AS $key )
{
preg_match_all( '|src\=\"([^\)]+)\"|Uism', $key, $inreg );
$src = empty($inreg[1][0]) ? "" : $inreg[1][0];
[...længere stykke kode der ændrer på attributes]
$tekst = preg_replace( $pat, $tag_replace, $row->_tekst );
}
Mit problem er, hvis der er flere billeder så ændrer preg_replace ALLE <img> attributes således, at outputtet bliver et antal ens billeder med ens attributes.
Hvordan kan jeg replace (eller matche) kun eet billede ad gangen og gemme det i $tekst (eller noget andet).
