preg_replace関数で後方参照の$1を配列のキーとして利用する
の編集
https://yassu.jp/pukiwiki/index.php?preg_replace%B4%D8%BF%F4%A4%C7%B8%E5%CA%FD%BB%B2%BE%C8%A4%CE%241%A4%F2%C7%DB%CE%F3%A4%CE%A5%AD%A1%BC%A4%C8%A4%B7%A4%C6%CD%F8%CD%D1%A4%B9%A4%EB
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
(no template pages)
Perlでは簡単にできたのに、これが意外と難しい。 Perl (オプション g は繰り返しの意味) @colors = ('#FFFFFF', '#000000'); $line = '%1'; $line =~ s/%(\d)/color:$colors[$1]/g; print "Content-type: text/html\n\n$line"; PHP $colors = array('#FFFFFF', '#000000'); $line = '%1'; $line = preg_replace("/%(\d)/e", "'color:'.replace_color($1)", $line); echo $line; function replace_color($key) { global $colors; return $colors[$key]; } 結果はいずれも color:#000000
タイムスタンプを変更しない
Perlでは簡単にできたのに、これが意外と難しい。 Perl (オプション g は繰り返しの意味) @colors = ('#FFFFFF', '#000000'); $line = '%1'; $line =~ s/%(\d)/color:$colors[$1]/g; print "Content-type: text/html\n\n$line"; PHP $colors = array('#FFFFFF', '#000000'); $line = '%1'; $line = preg_replace("/%(\d)/e", "'color:'.replace_color($1)", $line); echo $line; function replace_color($key) { global $colors; return $colors[$key]; } 結果はいずれも color:#000000
テキスト整形のルールを表示する