Veröffentlicht 21. August 200817 j Hi Leute, ich möchte gern aus einem Stylesheet alle eingebundenen Bilder raus haben, also alles was inerhalb eines url() steht, wie z.B. bei background, background-image, etc. Problem ist, dass url() auch z.B. bei @import verwendet werden kann und wenn ich nur auf url() matche bekomme ich die mit. hat da jemand ne idee zu? gruß Jan
21. August 200817 j grundsätzlich ja, aber man kann ja nie wissen ob da einer ein php-skript zum bilder durchschleifen nutzt und da dann .php steht Das muss wirklich 100% bei jedem Stylesheet funktionieren!
21. August 200817 j url\(.*\.(jpg|gif|png|php)\)? Erweiter es doch einfach um die Bedingungen, die auftreten können
21. August 200817 j Naja die Bedingungen sind ja eher variabel. Wer sagt mir denn dass nicht irgendwer seine Files .doofedateiendung nennt? kann ja auch sein. Gut ist jetzt vielleicht etwas übertrieben, aber kann dennoch sein... Ich denke ich werde das jetzt an den CSS-Befehlen selbst festmachen. URL lässt sich ja nicht an so vielen stellen verwenden. Eingefallen sind mir bisher: - background: url() - background-image: url() - list-style-image: url() - list-style: url() gibts da sonst noch was?
21. August 200817 j Jetzt hab ich mit der nächsten Regex ein Problem <style.*?type="text\/css"[^>]*>.*?@import.*?(url\(?[\"|']?)?(.*?)([\"|']?\))?.*?<\/style> sollte eigentlich matchen auf <style type="text/css"> @import "/test.css"; @import '/test.css'; @import url(test.css); @import url("test.css"); @import url('test.css'); </style> also auf alle gültigen Schreibweisen für einen @import Befehl. Zum Testen gibts das ganze hier regex online tester - regular expressions
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.