регулярка для удаления коментариев на php

panitokey

Новичок
регулярка для удаления коментариев на php

Искал не нашел.
Вообщем задача почистить все скрипты от коментариев 3-х видов #, // , /* */
Было бы легко если бы не вшитые 'http://', долго мучался ниче неполучилось.
Может кто нибудь сталкивался с подобной проблемой
 

cDLEON

Онанист РНРСlub
А зачем удалять комментарии?
Чужие скрипты под свои максируем?
 

akond

Новичок
Я так думаю, что эта задача в общем случае не решается с помощью регулярных выражений.
 

panitokey

Новичок
Автор оригинала: asterisk
удалить все начиная с символа # или // и до конца строки


удалить все между этой парой тегов
так вот как раз и проблема в этом, бывает в тексте скрипта встречается типа "dvsdgfsd/*dfdgdfgfdhhg"
далее строка "fgdfgh*/fhgjkjhkjlk"
получается белеберда после обработки

насчет // & # такая же лажа
если он встречается в кавычках то все равно удаляется
т.е.
"dvcfdfgfhhj#dfgfdghfj"
обрубается все после #

-~{}~ 21.11.07 17:06:

а насчет того зачем удаляем.... просто ненужно что потом мои скрипты сидел и разбирал кто то аж с коментариями) работает и ладно)
 

kruglov

Новичок
panitokey
Хм, мне, наоборот, приятно писать понятные скрипты. Может и вы вырастете из возраста "мое гениальное щас все попрут". А шифровать если надо - так для этого инструменты другие применяются.

Вам пост tony2001 не помог, что ли, я не пойму.
 

Solid

Drosera anglica
Решается с помощью http://ee2.php.net/manual/ru/ref.tokenizer.php в течении 2х минут.
 

TutanXamoN

Новичок
akond
Небездоказательно. По ссылке tony2001 в коментах есть ГОТОВЫЕ решения для реализации етого на регулярках.

ЗЫ Безусловно "комментарии надо писать, а не удалять", но когда у тебя в процессе писания накапливаеться 50-70 скриптов с комментариями вида "а если так..." или "//echo $some_var" для отладки которые натыканы почти везде разумней их обрезать.
ЗЗЫ Насчёт документирования кода я лично предпочитаю юзать Enterprise Architect - в ней не только код можно откоментить но и сгенерировать полноценную документацию со связями и описанием функций
 

phprus

Moderator
Команда форума
TutanXamoN
"а если так..." или "//echo $some_var" для отладки которые натыканы почти везде разумней их обрезать.
Разумнее их обрезать вручную и только вручную, так как автоматическое удаление таких комментариев вместе с отладочными коментариями может удалить и нужные комментарии, которые непосредственно комментируют код.
 

@ndrey

Новичок
вот и я о том же, что небездоказательно, просто человек видимо не пробывал и сказал.
только овчинка выделки не стоит:
1. php_strip_whitespace работает быстрее, чем регулярка.
2.
"комментарии надо писать, а не удалять"
 

akond

Новичок
TutanXamoN
По сссылке tony2001 безусловно есть готовые решения, но только не для задачи, поставленной в заголовке, а именно: удаление комментариев из ПХП скриптов.

@ndrey
"небездоказательно, только овчинка выделки не стоит"
Т.е. пока бездоказательно.
 

TutanXamoN

Новичок
phprus
Я уже написал где у меня задокументирован код.

akond
Помойму хватит флейма есть вопрос и есть ответы:
(если Вы считаете что ето ответы не на тот вопрос, возможно, стоит внимательней перечитать вопрос?)
1. php_strip_whitespace
2. php -w
3. регулярка
4. оставлять всё как есть.
 

akond

Новичок
Автор оригинала: TutanXamoN
Помойму хватит флейма есть вопрос и есть ответы:
(если Вы считаете что ето ответы не на тот вопрос, возможно, стоит внимательней перечитать вопрос?)
1. php_strip_whitespace
2. php -w
3. регулярка
4. оставлять всё как есть.
Дело не в флейме, а в том, что поставленная задача не может быть решена в общем виде с вашим третьим вариантом. Первые два не являются решениями с помощью регулярных выражений. То есть, если ему надо просто убрать комментарии, то пусть использует первые два способа, а вот если нужно убрать именно _с_помощью_регулярных_варажений_, то я считаю, что этого сделать нельзя в абсолютно всех мыслимых и не мыслимых случаях.
 

TutanXamoN

Новичок
akond

а вот если нужно убрать именно _с_помощью_регулярных_варажений_, то я считаю, что этого сделать нельзя в абсолютно всех мыслимых и не мыслимых случаях.
Если рассуждать так как Вы то в вопросе не было такой формулировки, соответственно:
1. Была предоставлена ссылка в которой при желании можно найти реализацию с регулярными выражениями, безусловно не для всех возможных вариантов(например мне стало просто интересно + было свободное время и я нашёл)
2. Были указаны альтернативные пути решения проблемы

PS не всегда решением ПРОБЛЕМЫ есть ответ на поставленный ВОПРОС.
 

akond

Новичок
Автор оригинала: TutanXamoN
PS не всегда решением ПРОБЛЕМЫ есть ответ на поставленный ВОПРОС.
Это верно. Но это не про меня, т.к. я не собирался давать ответ. Я лишь только указал, что на РЕ не стоит полагаться (в общем случае). Только и всего.
 
Сверху