-2

私は変数00 EF 5D 0Eを持っており、次の方法でこの種の変数を変換する関数を書きたいと思います。

1) スペースが削除され、コロンに置き換えられました。

2)すべての文字を小文字に変換

3) ペアの最初が 0 の場合は、削除する必要があります。

00 EF 5D 0E becomes 0:ef:5d:e
88 8E 07 TT becomes 88:8e:7:tt

これを達成できるphp関数を書くことは可能ですか、それをファイルに抽出してからsedなどのツールを使用する必要があります

4

1 に答える 1

1

入力と期待される出力に基づいて、次のようなことができます。動的関数には 5.3 以降が必要であることに注意してください。

// split input by spaces
$parts = explode(' ', $input);

// remove leading zeros
$parts = array_map(function($part) {
    return preg_replace('/0/', '', $part, 1);
}, $parts);

// make lowercase and join parts with ":"
$output = strtolower(implode(':', $parts));

echo $output;

サンドボックス テスト

于 2013-09-12T06:35:56.897 に答える