E' un incubo scrivere su sto forum mangiabackslash...
Comunque:
codice:
$x = array(
'@import url("x.css"); ciao mondo',
'@import url(\\'x.css\\')',
'@import url "x.css" ',
'@import url \\'x.css\\'',
'@import "x.css" ',
'@import \\'x.css\\'',
);
foreach ($x as $i) {
$pattern = '
/ # inizio pattern
@import # stringa @import
\s* # eventuali spazi
(?:url)? # stringa url opzionale
\s* # eventuali spazi
\(? # aperta parentesi opzionale
[\\'"] # apice o virgolette
(.*?) # cattura tutto fin al prossimo...
[\\'"] # ...apice o virgolette
\)? # chiusa parentesi tonda opzionale
/x'; # fine pattern
preg_match($pattern, $i, $match);
print_r($match);
}