регулярное выражение — PHP анализ строки класса CSS

Мне нужно получить имя класса CSS, атрибуты и значения, чтобы применить встроенный стиль CSS к DIV.
В настоящее время я могу получить информацию об имени класса CSS из строки, например:

$class = ".custom_class {
margin-top: 0px !important;
border-top-width: 0px !important;
border-right-width: 0px !important;
border-left-width: 0px !important;
padding-top: 250px !important;
padding-bottom: 250px !important;
background-image: url(http://localhost/wordpress/wp-content/uploads/2015/01/old-car.jpg?id=3663) !important;
border-left-color: #dd3333 !important;
border-right-color: #dd3333 !important;
border-top-color: #dd3333 !important;
}";

Как я могу получить или пересмотреть все атрибуты и значения CSS, чтобы включить их в div следующим образом:

<div class="custom_class" style="margin-top: 0px !important;border-top-width: 0px !important;border-right-width: 0px !important;border-left-width: 0px !important;padding-top: 250px !important;padding-bottom: 250px !important;background-image: url(http://localhost/wordpress/wp-content/uploads/2015/01/old-car.jpg?id=3663) !important;border-left-color: #dd3333 !important;border-right-color: #dd3333 !important;border-top-color: #dd3333 !important;"></div>

Я пытался с этим: preg_match("/{(.*?)}/", $class, $match);
Но это выводит в скобках. И что касается названия класса, я не знаю, как это сделать.

-3

Решение

ты рядом со своим регулярным выражением preg_match("/{(.*?)}/", $class, $match);просто уберите фигурные скобки и получите данные в $match[1]:

preg_match("/^([\w.]+)\s*\{(.*?)\}/s", $class, $match);
$classname = $match[1];
$style = $match[2];
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]