t'ho detto che gli slashati li levo a prescindere ... meglio usare unOriginariamente inviato da kuarl
![]()
$__sd = Array( md5( "\'" ), md5( "\\\"" ) );
$txt = str_replace( Array( "\'", "\\\"" ), $__sd, $txt );
che appesantire la preg ... che una volta privata degli slashati va benissimo cosi' :
"/(?U)('|\")([^\a]*)\\1/sm"
ora l'unico inghippo e' riuscire a togliere i commenti dal file, poiche' questi potrebbero generare casini ...
difatti qui in mezzo:
/*
awi oidaji OIJ "j ijda oidoiawo jdoij' jIJ Diaojw di oj
*/
ci scrivi quello che vuoi ...
la sequenza provata e apparentemente funzionante e' questa:
// levo gli slashati:
$__sd = Array( md5( "\'" ), md5( "\\\"" ) );
$txt = str_replace( Array( "\'", "\\\"" ), $__sd, $txt );
// levo i commenti tra /* e */ :
$txt = preg_replace( "/(?U)([[:space:]]*)(\/\*)([^\a]*)(\*\/)([[:space:]]*)/", "\n", $txt );
// levo le stringhe:
$txt = preg_replace( "/(?U)('|\")([^\a]*)\\1/sm", "[stringa]", $txt );
// levo i commenti a singola linea:
$txt = preg_replace( "/(?U)(\/\/)([^\a]*)(\r\n)/", "\n", $txt );
ora ho il file privo di qualunque tipo di stringa e contenente le sole variabili ... fammi / fatemi sapere se e' cosi' ...
unico dubbio
non ho testato e non saprei ma forse se una variabile avesse:
$var = "aopwdkkowa k /* odwakodwak */ kdowa kdowa ";
la parte al centro verrebbe eliminata ... grossa crisi![]()