使用preg_replace提取属性

时间:2014-03-21 20:25:59

标签: php css string function preg-replace

我想提取所有属性(以后能够操作它们)。

iow ...将提取{}之间的所有内容。

<?php

$css = <<<EOF

body {
z-index : 9;
padding: 0;
margin: 0;
line-height: 10px;
}

p {
z-index: 9;
font-size: 10px;
}

h1,h2,h3,h4,h5,h6 {
z-index: 2;
padding: 0;
margin: 0;
font-size: 100%;
border: 0 none;
}

EOF;

echo preg_replace( '~{(.*)}~s', '$1<br/>' , $css );

?>

我希望通过换行符提取所有属性(以后能够操作它们):

z-index : 9;
padding: 0;
margin: 0;
line-height: 10px;

z-index: 9;
font-size: 10px;

z-index: 2;
padding: 0;
margin: 0;
font-size: 100%;
border: 0 none;

1 个答案:

答案 0 :(得分:1)

对于此特定输入字符串,请尝试此操作 -

echo preg_replace( '~.*?{(.*?)}~s', '$1<br/>' , $css );

正则表达式的演示和解释Here 输出 -

z-index : 9;
padding: 0;
margin: 0;
line-height: 10px;
<br/>
z-index: 9;
font-size: 10px;
<br/>
z-index: 2;
padding: 0;
margin: 0;
font-size: 100%;
border: 0 none;
<br/>