Ik ben bezig met een script voor syntax highlighting voor CSS. Het highlight eigenlijk niet alleen de code, maar het haalt ook de originele whitespace weg en zet er overnieuw tabs en newlines tussen, zodat het uiterlijk van de code consistent is. Nu is het zo dat alle whitespace wordt verwijderd, voordat de rest wordt geparsed. Het probleem is dat niet alleen spaties zoals bij "body {color:red ; }" verwijderd worden ("body:color:red;"), maar "span{margin:20px 30px 20px 40px;}" wordt bijvoorbeeld "span{margin:20px30px20px40px;}". Dat is naast onleesbaar ook invalid code.
Ik zou hiervoor dus een regexp willen maken die alle spaties verwijdert, behalve die tussen : en ;. Ik heb al flink gezocht naar documentatie hiervoor, maar ik heb nog geen goede uitleg gevonden. Zelfs php.net kon het me niet duidelijk maken. Ik hoop dat iemand hier me een duwtje in de goede richting kan geven
Ik zou hiervoor dus een regexp willen maken die alle spaties verwijdert, behalve die tussen : en ;. Ik heb al flink gezocht naar documentatie hiervoor, maar ik heb nog geen goede uitleg gevonden. Zelfs php.net kon het me niet duidelijk maken. Ik hoop dat iemand hier me een duwtje in de goede richting kan geven