Ecco il mio codice regex:Regex: Trovare gli URL in background-image CSS, avendo difficoltà
preg_match_all('/background[-image]*:[\s]*url\(["|\']+(.*)["|\']+\)/', $css, $matches, PREG_SET_ORDER);
Sembra per i CSS che assomiglia a questo:
background:url('../blah.jpg');
Il mio problema che sto avendo è alcuni CSS mi raschiare si presenta così:
background:transparent url('../blah.jpg');
background:transparent no-repeat url('../blah.jpg');
non sono un esperto quando si tratta di regex, quindi mi chiedo come posso dire che nulla di saltare dopo i due punti e prima dell'URL.
BTW, '' aggiunge la stringa con corrispondenza a '$ corrisponde ['immagine']'? Non lo sapevo! Bene !! –
safrazik
Sì. Le corrispondenze $ normalmente catturano tutti i valori tra parentesi e l'intera corrispondenza, ma una volta che sai esattamente dove vuoi arrivare, indipendentemente da dove si trova nella tua espressione regolare, puoi usare le etichette. È molto più pratico. – inhan
Grazie per la spiegazione :) – safrazik