voglio dividere un attributo border da CSS nelle sue parti costituenti e cioè:Regex per attribuire la scissione confine CSS nelle sue parti
.someClass{
border: 1px solid black;
}
Into
border-width: 1px
border-style: solid;
border-color: black;
Ho diviso fuori confine: e punto e virgola prima di questo, quindi ho semplicemente bisogno di analizzare la sezione del valore dell'attributo
Ora in CSS è possibile avere qualsiasi combinazione dei 3 attributi sopra presenti così
border: 1px solid;
border: solid Gold;
border: 1em;
border: 1mm #000000;
border: 1px inset rgb(12, 44, 199);
Tutti sono legali, quindi devo tenerne conto.
Quello che ho finora è
([0-9]+[a-zA-Z|%]+)* *([a-zA-Z]*) *(.*)
che funziona bene per il caso normale, ma non riesce sul caso "1px solid", come solido viene messo in 3 ° gruppo di cattura, non il secondo. Non sono un esperto di regex, quindi potrei fare degli errori molto semplici, ma qualsiasi aiuto sarebbe molto apprezzato. Sto lavorando con C# (ma sono state principalmente testate in http://gskinner.com/RegExr/ quindi eventuali differenze potrebbero essere state il problema)
Grazie, sembra funzionare bene per me e ottiene risultati abbastanza accurati per me. – Nymain