我有不好的CSS文件,像這樣的規則(我無法控制這些文件的生成),清理錯誤的CSS規則:嘗試使用js代碼
.class html {
}
.class2 html,.class3 html {
}
html {
}
html .class4 {
}
.class body {
}
.class2 body,.class3 body {
}
body {
}
body .class4 {
}
,你可以看到,一些HTML和BODY規則在類名後放。
我想要做的是扭轉這個規則,以獲得適當的限定符(標籤然後類)。
我預期的結果是:
html .class {
}
html .class2 ,html .class3 {
}
html {
}
html .class4 {
}
body .class {
}
body .class2 ,body .class3 {
}
body {
}
body .class4 {
}
我試圖用一個正則表達式:([^,]+\s+)(html|body)
這個換人:$2 $1
,但我沒有得到我想要的東西。 (Repro on regex101)
如何達到我的目標?
PS:這將以自定義吞嚥任務結束,因此需要js正則表達式解決方案。
或者嘗試['(\。\ S +)( \ s +)(html | body)' - >'$ 3 $ 2 $ 1'](https://regex101.com/r/kM9kZ7/2)。 –
@Tushar:只關注body和html標籤;因爲它們更高在dom比我的根類; –
@WiktorStribiżew:這工作。你應該添加一個答案,所以我可以獎勵你 –