我需要一些关于 RegEx 的帮助,它应该将 cssText(不是选择器,而是 {} 中的部分)与 PHP 中的键-> 值对数组关联起来
假设选择器部分已删除,例如:
color: black;
font-family: \"Courier New\";
background: url(\"test.png\");
color: red;
是的,字符串被转义了,我在提取 {} 部分时确实做到了。
但:
如果背景是 dataURI 或者设置了如下内容属性:
content:'1.test;2.blabla;';
background: white url('data:image/png;base64,iVBORw0KGgoAA
AANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABl...') no-repeat scroll left top;
我使用的拆分正则表达式:
preg_match_all('/([\w-]+)\s*:\s*([^;]*)\s*;?/i', $css, $matches, PREG_SET_ORDER);
失败:(
我不是 RegEx 的专业人士,需要您就如何不踩“;”提出建议 出现在字符串内的 \"...\" 内。
它应该在捕获组 ([^;]*) 中,我发现这意味着:匹配任何不是的单个字符;并重复 0 次或更多次。
提前致谢!