の交換、彼らは、通常のテキストとカラーコード、例えば: & C [& & aAdmin C]から成ります。カラーコードは&で始まり、1文字または数字で始まります。次のカラーコードまたは文字列の最後で終了します。 文字列には&がありません。 今のところ私はこの機能を持っていますが、文字列の先頭には1つのカラーコードしか扱えません。良い正規表現の任意の提案は、1つの文字列で複数のcolorcodesを処理するために置き換えますか?正規表現はカラーコード
function mccolor($string){
$codes = array( "&0",
"&1",
"&2",
"&3",
"&4",
"&5",
"&6",
"&7",
"&8",
"&9",
"&a",
"&b",
"&c",
"&d",
"&e",
"&f");
$replace = array(
'<span style="color:#000000;">',
'<span style="color:#0000BF;">',
'<span style="color:#00BF00;">',
'<span style="color:#00BFBF;">',
'<span style="color:#BF0000;">',
'<span style="color:#BF00BF;">',
'<span style="color:#BFBF00;">',
'<span style="color:#BFBFBF;">',
'<span style="color:#404040;">',
'<span style="color:#4040FF;">',
'<span style="color:#40FF40;">',
'<span style="color:#40FFFF;">',
'<span style="color:#FF4040;">',
'<span style="color:#FF40FF;">',
'<span style="color:#3F3F10;">',
'<span style="color:#FFFFFF;">');
return str_replace($codes, $replace, $string).'</span>';
}
どうもありがとう、正常に動作します。 – Abadon
@abadon:ようこそ。 – Toto