如何用preg替换以反斜杠开头的单词


how to hex to str word started with backslash common by preg replace?

我使用这个模式:

$line = preg_replace('#('w)('w)#e', "chr(hexdec('$1$2'))", $line);

但这对这个字符串很有用:"c8d3e320c7e1e1f8e520c7e1d1cde3e420c7e1d1cdede3fe"

我想转换字符串,例如:-"''c8''d3''e3''20''c7''e1''e1''f8''e5''20''c7''e1''d1''cd''e3''e4''20''c7''e1''d1''cd''ed''e3''fe"

这意味着任何以''开头的字符如何改变模式?

谢谢+Akam

此模式解决了问题

  $line = preg_replace("#''''('w)('w)#e", "chr(hexdec('$1$2'))", $line);
$line = "''c8''d3''e3''20''c7''e1''e1''f8''e5''20''c7''e1''d1''cd''e3''e4''20''c7''e1''d1''cd''ed''e3''fe";
echo preg_replace("#'''('w)('w)#e", "chr(hexdec('$1$2'))", $line);
//test
preg_match_all("#'''('w)('w)#e", $line, $out);
echo '<pre>';
print_r($out);
    [1] => Array
        (
            [0] => c
            [1] => d
            [2] => e
            [3] => 2
            [4] => c
            [5] => e
            [6] => e
            [7] => f
            [8] => e
            [9] => 2
            [10] => c
            [11] => e
            [12] => d
            [13] => c
            [14] => e
            [15] => e
            [16] => 2
            [17] => c
            [18] => e
            [19] => d
            [20] => c
            [21] => e
            [22] => e
            [23] => f
        )
    [2] => Array
        (
            [0] => 8
            [1] => 3
            [2] => 3
            [3] => 0
            [4] => 7
            [5] => 1
            [6] => 1
            [7] => 8
            [8] => 5
            [9] => 0
            [10] => 7
            [11] => 1
            [12] => 1
            [13] => d
            [14] => 3
            [15] => 4
            [16] => 0
            [17] => 7
            [18] => 1
            [19] => 1
            [20] => d
            [21] => d
            [22] => 3
            [23] => e
        )
)