Вопрос по регулярному выражению
В общем, такое дело...
Сделал парсер CSS-кода для подсветки синтаксиса: ![]() Собираюсь делать аналогичный для JavaScript кода. Интересует вопрос, как правильно через регулярку исключить парсинг в кавычках? Допустим у меня есть некий JS код:
function test() {
return 'foo';
}
var testStr = 'function test(){return \'foo\'}';
И регулярка, которая обернёт все "function" в <span class="color-pink"></span>. В данном случае действие применится и к строке. Как более грамотно исключить парсинг строк в кавычках? Кавычки могут быть как двойные, так и одинарные, ещё нужно учесть, что кавычка не экранирована. Всем спасибо за ответы.:thanks: |
Цитата:
function test() {
return 'foo';
}
var testStr = 'function test(){return \'foo\'}';
Превращали в
function test() {
return 'foo';
}
var testStr = ~1~;
А после расскрасски или форматирования текста вставляли строки вместо их "идентификаторов"... |
ksa, есть идея все строки оборачивать в какой-нибудь <span class="code-string"></span>
И в CSS прописывать:
.code-string, .code-string * {
color: green !important;
}
Т.е., вся строка будет одноцветной, не зависимо от внутренних элементов. Но мне кажется, что это немного извращённо. :) |
http://javascript.ru/forum/project/4...literalov.html
Цитата:
|
Цитата:
|
| Часовой пояс GMT +3, время: 22:07. |