Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удалить коментарии 
V
    Опции темы
0x00000000
Дата 30.8.2008, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 27.8.2008

Репутация: нет
Всего: -1



помогите реализовать - допустим у меня есть файл с исходником в котором есть коментарии вида // блаблабла и коменты вида /* ggsdfgsdg */ как сделать чтоб скрипт их удалял
PM MAIL   Вверх
gta4kv
Дата 30.8.2008, 14:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 1
Всего: 91



регуляркой. хD

Это сообщение отредактировал(а) gta4kv - 30.8.2008, 14:18
PM MAIL   Вверх
Mal Hack
Дата 30.8.2008, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 16
Всего: 261



Комментарии можно выделить следующей регуляркой:
Цитата
(\/\*.*?\*\/)|((\/\/|\#)([^\n]+\n\s*(\/\/|\#))*[^\n]+)

Заменить можно через preg_replace, например.

Честно, писал очень давно, так что все это "вроде бы работает" =)
PM ICQ   Вверх
0x00000000
Дата 30.8.2008, 22:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 27.8.2008

Репутация: нет
Всего: -1



Mal Hack, 
а как это намутить с str_replace ?
PM MAIL   Вверх
bars80080
Дата 30.8.2008, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 2
Всего: 315



это мутят с preg_replace()

http://php.ru/manual/function.preg-replace.html
PM MAIL WWW   Вверх
Sannis
Дата 30.8.2008, 22:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 14.8.2007
Где: Москва

Репутация: 1
Всего: 13



А ещё есть http://ru.php.net/manual/ru/function.php-s...-whitespace.php smile

Добавлено через 20 секунд
Правда заодно и переводы строк удалит...


--------------------
Я Критик Джим, раньше писал моды для IPB 1.3.x-2.3.x, а теперь продвигаю Node.js в массы.
PM MAIL WWW   Вверх
0x00000000
Дата 30.8.2008, 23:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 27.8.2008

Репутация: нет
Всего: -1



bars80080, 

Код


$string = "";
$pattern = "(\/\*.*?\*\/)|((\/\/|\#)([^\n]+\n\s*(\/\/|\#))*[^\n]+)";  // в регулярках пока полный ноль((
$replacement = ""; // оставить пустым чтоб коментарии удалялись?
$string2 = preg_replace($pattern, $replacement, $string); 






M
MoLeX
Модератор: пользуемся кнопкой КОД



Это сообщение отредактировал(а) MoLeX - 31.8.2008, 17:32
PM MAIL   Вверх
Mal Hack
Дата 30.8.2008, 23:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 16
Всего: 261



Код

$code = preg_replace("#(\/\*.*?\*\/)|((\/\/|\#)([^\n]+\n\s*(\/\/|\#))*[^\n]+)#s", "", $code); 

PM ICQ   Вверх
0x00000000
Дата 31.8.2008, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 27.8.2008

Репутация: нет
Всего: -1



где я тут затупил?(

форма отправки  исходного кода с коментариями main.html
Код


<body>
<form method="POST" action="main.php" enctype="text/plain">
<INPUT NAME="a" TYPE="char">
<INPUT TYPE=SUBMIT VALUE="OK">
</body>





форма приема main.php
Код

<?
$code = (char) $_REQUEST ["a"];   // пишет что ошибка в этой строчке(   
$code = preg_replace("#(\/\*.*?\*\/)|((\/\/|\#)([^\n]+\n\s*(\/\/|\#))*[^\n]+)#s", "", $code); 
echo  $code 
 ?>


syntax error, unexpected T_VARIABLE in /var/www/main.php on line 11

Это сообщение отредактировал(а) 0x00000000 - 31.8.2008, 13:54
PM MAIL   Вверх
HackMan
Дата 31.8.2008, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Юзверь-программист
**


Профиль
Группа: Участник
Сообщений: 391
Регистрация: 18.6.2005
Где: .ua

Репутация: нет
Всего: 9



дай угадаю, программируешь на Си, и решил изучить PHP?   smile 

Вместо
Код

<INPUT NAME="a" TYPE="char">


Используй
Код

<textarea name="a"></textarea>


И никаких приведений типа к char в скрипте делать не надо


--------------------

Завтра - это самый загруженный день недели smile

user posted image

user posted image
PM MAIL ICQ   Вверх
0x00000000
Дата 31.8.2008, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 23
Регистрация: 27.8.2008

Репутация: нет
Всего: -1



HackMan, 
да вы угадали насчет си-)  благадарю за помощь все работает ! тему можна закрыть)
PM MAIL   Вверх
MonaRx777
Дата 21.3.2009, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 21.3.2009

Репутация: нет
Всего: нет



Извините, но ваше регулярное выражение не работает  smile 
Цитата

(\/\*.*?\*\/)|((\/\/|\#)([^\n]+\n\s*(\/\/|\#))*[^\n]+)


Например, обработка такого кода:
Цитата

...
echo 'http://www.primer.ru/';//comment";
...

приведет к его полной неработоспособности... smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0724 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.