recode(PHP 4) recode - перекодирует строку в соответствии с recode-запросом. Описаниеstring recode (string request, string string)
|
||||||||||
|
||||||||||
символ с 16-ричным кодом hh
символ с 8-ричным кодом ddd, или backreference/обратная ссылка
Эффект от применения "\cx" таков: если "x" это символ в нижнем регистре, он конвертируется в верхний регистр. Затем бит 6 символа (hex 40) инвертируется. Таким образом, "\cz" становится hex 1A, "\c{" становится hex 3B, а "\c;" становиться hex 7B.
После "\x" читаются не более двух 16-ричных цифр (буквы могут быть в любом регистре).
После "\0" читаются не более четырёх 8-ричных цифр. В обоих случаях, если имеется менее двух цифр, используются именно те, которые представлены. Таким образом, последовательность "\0\x\07" специфицирует два бинарных нуля с последующим символом BEL. Убедитесь, что вы предоставили две цифры после начального нуля, если последующий символ сам является 8-ричным числом.
Обработка backslash с последующими цифрами, отличными от 0, сложнее. Вне класса символов, PCRE читает его и любые последующие символы как 10-ричное число. Если число менее 10 или если в выражении имеется по меньшей мере столько же захватывающих левых скобок, вся последовательность считается back reference\обратной ссылкой. Описание того, как этот механизм работает, будет дано позднее в дискуссии о субпатэрнах в скобках.
Внутри класса символов, или если 10-ричное число больше 9 и нет такого же количества захватывающих субпатэрнов, PCRE считывает до трёх 8-ричных цифр, идущих после backslash, и генерирует один байт из последних значащих 8 битов этого значения. Любые последующие цифры представляют сами себя. Например:
| |