0

PHPの変数のようなsassでキーと値のペアを抽出するにはどうすればよいですか?

$blue: #3bbfce;
$margin:16px;

結果は次のようになります。

array('blue' => '#3bbfce', 'margin' => '16px'); 

次に、cssスタイルシートで行われたすべて/すべての変数宣言を削除(削除)するにはどうすればよいですか?

4

1 に答える 1

6
<?php
$subject = '$blue: #3bbfce; \n $margin:16px;';
$pattern = '/\$(.*?):(.*?);/';

preg_match_all($pattern, $subject, $matches);
$variableArray = array_combine( $matches[1], $matches[2] );
array_map( function($val) { return ltrim($val); }, $variableArray );
print_r($variableArray);

これにより、探している結果が得られます。そのような定義をすべて取り除くにはpreg_replace、件名に同じ$pattern. 基本的に、この正規表現が言うことは

  • $ で始まるものを検索...
    • 任意の文字セットが続き、次にコロンと別の任意の文字セットが続き、その後にセミコロンが続きます。

のような文字クラスを使用してこのパターンを改良し、 のような変数と一致しないようにすることもできます$this is not a valid variable: name

于 2012-09-09T01:27:27.320 に答える