ciao, ho un problema con la conversione dei tag HTML mediante una Regular Expression.
ho un testo che viene generato da un editor che però inserisce dei tag maiuscoli ed inoltre non chiude quelli senza attributi (tipo il br).
quindi mi servirebbe intercettare in una stringa data i tag HTML e convertirli in minuscolo.
ho provato a creare una funzione in questo modo:
Codice PHP:
function convert()
{
$text = '<HTML><HEAD><META><TITLE></TITLE>';
$re = "<([/]?[A-Za-z0-9]*)>";
$new = "<\\1>";
echo eregi_replace($re, $new, $text);
}
il problema è che non so come rendere minuscolo il contenuto delle parentesi acute, ho provato anche così
Codice PHP:
echo eregi_replace($re, strolower($new), $text);
ma niente
per quanto riguarda i BR, IMG e gli altri tag che non hanno un corrispondente tag di chiusura ho pensato di fare in questo modo:
Codice PHP:
function convert()
{
$text = '
[img]\dir\subdir\img.jpg[/img]';
$re = "<([A-Za-z0-9\"]*)>";
$new = "<\\1 />";
echo eregi_replace($re, $new, $text);
}
qui invece nasce il problema che non devo rendere minuscolo tutto il testo tra parentesi acute, ma solamente i nomi dei tag e degli attributi, quindi tutto a parte ciò che sta dentro i doppi apici.
mi potete dare una mano?