Tôi đang cố gắng để thay đổi CSS hợp lệ như thế này:Regex để thêm thiếu selectors không hợp lệ CSS
{color:red}
và làm cho nó có giá trị như thế này:
.missing_selector{color:red}
Ví dụ CSS:
a {
color:black;
background-color:blue;
}
{color:red}
<!-- TEST -->
@media screen and (max-width:620px) {
/* TEST 2 */
a.test {color:blue;}
p[class="test2"] {color:green;}
}
Hiện tại của tôi biểu thức chính quy:
/([^a-z0-9\)\];\-_]*\{)/i
Sống thử:
http://www.phpliveregex.com/p/eMq
Chỉ cần một gợi ý, không phải là câu trả lời, nhưng có lẽ thư viện này sẽ giúp: https://github.com/sabberworm/PHP-CSS-Parser Một giải pháp với regex một mình là khá dễ bị lỗi, tôi giả sử. – Jan
Bạn có thể thử ['/^\h*\K(?={)/m'] (https://regex101.com/r/mC7pI5/1) và thay thế bằng' .missing_selector' –