J'ai une question pour un ninja regex Javascript: Comment pourrais-je simplifier ma création variable d'une chaîne en utilisant le regroupement regex? Je l'ai actuellement travailler sans utiliser de groupe, mais j'aimerais voir une meilleure façon!Javascript Regex groupe plusieurs correspondances dans le modèle
La chaîne est:
var url = 'resources/css/main.css?detect=#information{width:300px;}';
Le code qui fonctionne est:
var styleStr = /[^=]+$/.exec(url).toString();
var id = /[^\#][^\{]+/.exec(styleStr).toString();
var property = /[^\{]+/.exec(/[^\#\w][^\:]+/.exec(styleStr)).toString();
var value = /[^\:]+/.exec(/[^\#\w\{][^\:]+[^\;\}]/.exec(styleStr)).toString();
Cela donne:
alert(id) //information
alert(property) //width
alert(value) //300px
Des preneurs?
En fait, la grammaire des sélecteurs CSS est un peu plus complexe. (Voir http://www.w3.org/TR/CSS2/grammar.html) – Gumbo