这有点复杂。
如果border:0;display:block
不包含,或者$subject
的边框不等于$subject
0 nor display:block;
例如,如果$subject
是:
案例1:
color:white
在preg_replace
之后将返回
color:white;border:0;display:block
案例2:
color:white;border:1px;
在preg_replace之后if将返回
color:white;border:0;display:block
案例3:
color:white;display:inline
在preg_replace
之后将返回
color:white;display:block;border:0;
案例4:
{empty}
在preg_replace
之后将返回
border:0;display:block;
答案 0 :(得分:3)
如何删除border
,display
属性,然后追加您想要的属性?
function no_border($css)
{
$css = preg_replace('/;?\s*(border|display)\s*:[^;]+;?/', '', $css);
return ltrim(rtrim($css, ';') . ';border:0;display:block;', ';');
}
no_border('color:white'); // "color:white;border:0;display:block;"
no_border('color:white;border:1px;'); // "color:white;border:0;display:block;"
no_border('color:white;display:inline'); // "color:white;border:0;display:block;"
no_border(''); // "border:0;display:block;"