Código PHP:
<?
$a2=" <a href=http://holaaaa something=value> <link href=' hola che!' boder> ";
function change($aver)
{
return strtoupper($aver[0]);
}
echo preg_replace_callback("/[a]*/is","change",$a2); ?>
pero este otro encuentra direcciones den los href y si estan sin comillas les pone doble comillas ("); teoricamente debería devolverme todo el string $a2 con algunos cambios, pero no parte de este como me hace.
Código PHP:
<?
$a2=" <a href=http://holaaaa something=value> <link href=' hola che!' boder> ";
function ech($aver)
{
if($aver[1]{0}!='\'' && $aver[1]{0}!='"')
$av=str_replace($aver[1],'"'.$aver[1].'"',$aver[0]);
return $av;
}
$z2='/<\s*[a-z:-]+\s+.*?\s*href\s*=\s*(?:'.'([\'"`])(.*?)\\1|([^\s]+))[^>]*>/is';
echo preg_replace_callback($z2,"ech",$a2);
?>
Código:
me devuelve <a href="http://holaaaa" something=value> <link href=' hola che!' boder>
Código:
porque? <link href=' hola che!' boder>