私はひもを持っています
$cmd = "java -jar yuicompressor-2.4.8.jar --type *file_type* *original_file* > *new_file*";
そして、私は以下のように交換したい
java -jar yuicompressor-2.4.8.jar --type css css/style.css > css/style.min.css
私がしたことは
$cmd = str_replace("*original_file*", $v, $cmd);
$cmd = str_replace("*new_file*", "$k", $cmd);
$cmd = str_replace("*file_type*", "css", $cmd);
私はのようなソート方法を探していますpreg_replace
。任意の提案をいただければ幸いです。
ここで正規表現が意味をなす理由はわかりません。代わりに、str_replace関数を使用して、一度に複数の置換を行うことをお勧めします。
<?php
$subject = 'java -jar yuicompressor-2.4.8.jar --type *file_type* *original_file* > *new_file*';
$catalog = [
'*file_type*' => 'css',
'*original_file*' => 'css/style.css',
'*new_file*' => 'css/style.min.css'
];
var_dump(str_replace(array_keys($catalog), $catalog, $subject));
出力は明らかに次のとおりです。
string(78) "java -jar yuicompressor-2.4.8.jar --type css css/style.css > css/style.min.css"
これはシンプルで堅牢なアプローチであり、正規表現ベースのパターンマッチングを使用するよりもはるかに効率的です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加