Регулярки...
Помогите, есть файл, я его читаю и там могут быть комментарии однострочные, вида: "//какой-то коммент"
Как их удалить с помощью регулярки? Вот файл в котором буду удалять комменты: alert(1);//awdajyjyjyjjywdawdawdwa //awdawdawdawdwa alert(2); //awdahtjyjyjyjy Прошу помощи только у вас)))) P.S с многострочными уже разобрался, нужно регулярка только для однострочных |
str.replace(/\/\/.*/g, '')
|
А можете еще помочь?
Смотрите, есть строка вида:
alert(1); "use strict"; alert(2); Я удаляю все пробелы, табы и переносы строк: string.replace(/\s*/g,''); Получаю: alert(1);"usestrict";alert(2); Я хочу , что-бы удалились все пробелы, табы и переносы строк, игнорируя все что в кавычках, причем как одинарных ' ', так и в двойных " ". Должно быть что-то вроде: alert(1);"use strict";alert(2); |
Смотрите, есть строка вида:
alert(1); "use strict"; alert(2); Я удаляю все пробелы, табы и переносы строк: string.replace(/\s*/g,''); Получаю: alert(1);"usestrict";alert(2); Я хочу , что-бы удалились все пробелы, табы и переносы строк, игнорируя все что в кавычках, причем как одинарных ' ', так и в двойных " ". Должно быть что-то вроде: alert(1);"use strict";alert(2); |
Это делается не регулярками, а конечным автоматом.
Само собой есть "тупое" решение: использовать три прохода - в первом заменить все "кавычные" строки на заменитель вида __СТРОКА_89__, заполняя соответствующий массив, вторым походом сделать то, что надо, и третьим вернуть строки на место. Но это классический "хуяк-хуяк" и будет на вашей совести.) P.S. Не стоит также забывать, что кавычки в коде могут быть экранированы.) |
Можно подробнее про этот дедовский метод?))))) В действии хоть примерно
|
АнонимныйПарень,
Если вы хотите тем самым как то сжимать скрипт, есть подводные камни alert(5.toString()); alert(5 .toString()); |
Цитата:
Как-то была аналогичная задача, я запилил КА через replace+regex |
Часовой пояс GMT +3, время: 20:48. |