Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Регулярка не должна воспринимать текст JavaScript в теге Script (https://javascript.ru/forum/misc/5690-regulyarka-ne-dolzhna-vosprinimat-tekst-javascript-v-tege-script.html)

alexKniaz 30.10.2009 17:50

Регулярка не должна воспринимать текст JavaScript в теге Script
 
Есть необходимость заменять в коде страницы текст "JavaScript" на другой.
При прямом подходе есть подводный булыжник - тот "яваскрипит" что в теге скрипта тоже меняется и плывёт весь дизайн.
Была идея сперва менять JavaScript на JJJAAAVVVAAASSSSCCRRRIIIIPPPPPTTTT а потом обратно. Но считаю это неадекватным.
Вопрос : как заставить body.innerHTML.replace только на "JavaScript" вне кавычек (или вне <script ...></script> <a href="javascript:...">...</a>)?

Kolyaj 30.10.2009 17:52

Менять только внутри текстовых нодов. innerHTML у body вообще чревато менять.

alexKniaz 30.10.2009 17:58

Т.е. получить элемент, проверить, текствой (div,span,td) ли и пойти дальне?
Может не пойти, т.к. внутри этих элементов может оказаться и скрипт.
Или я что-то не понял или всё равно нужна регулярка

alexKniaz 30.10.2009 19:00

Немного обдумал. Вопрос всё же в силе. Каким образом можно сделать чтобы выражению удовлетворяла строка вне кавычек и не удовлетворяла строка в них?

Kolyaj 30.10.2009 20:05

Цитата:

Сообщение от alexKniaz
Каким образом можно сделать чтобы выражению удовлетворяла строка вне кавычек и не удовлетворяла строка в них?

А в тексте что же, не может быть кавычек?

alexKniaz 30.10.2009 21:59

Не планируются. В конце концов можно вместо кавычек будет записать типа
<script ....></script>
но надо б разобраться хоть с кавычками.


Часовой пояс GMT +3, время: 15:02.