На своей домашней странице я использую эту функцию (higlight_string()) для подсветки кода. К примеру PHP: highlight_string(' <?php <script type="text/javascript"> //<![CDATA[ function checkName(field) { var pattern = /^[a-zа-яА-Яё][\wа-яА-Яё -]*$/i; if(pattern.test(field.value)) {return true;} else {return false;} } //]]> </script> ?>' ); Почему эта функция убирает все обратные слэши?, результат хорошо виден на моей странице - http://www.dmitryponomarev.ru/main/code ... ds.js=show не помагает ничего, в итоге подсветку для js не удается сделать, где используется регулярное выражение, для php прокатывает, т.к. там регулярное выражение в строке.
Горбунов Олег согласен, но даже при передаче ей неккоректного PHP кода PHP: <? highlight_string('<? \w'); эта функция не должна терять символы
Эта функция используется лишь как основа, т.к. по-сути ключевые слова и синтаксис похож, у меня написана доработка некоторых моментов, к примеру, убираются php тэги для создания иллюзии подсветки javascript, но я не ожидал, что она именно ТЕРЯЕТ символы!!! Придется чем-то backslash заменять на время, а потом восстанавливать (наверно на этом форуме так и сделано?) ведь здесь backslash не теряется в PHP: <?php \test а выполните: PHP: <?php highlight_string('<?php \test'); highlight_string('<?php \\\\\\test'); ?>
Это не корректный PHP код. Чтобы функция работала правильно, необходимо передавать её корректный код. http://bugs.php.net/bug.php?id=39783