Блоки комментариев php preg_replace

патерн подобен

/* comment [comment goes here] */ /* comment please do not delete the lines below */ [I am a special line so I should not be changed ] /* comment please do not delete the line above */ 

Я хотел бы удалить блоки комментариев, но вместо поиска /**/ мне хотелось бы, чтобы комментарий был /* comment [] */ где [] является фактическим комментарием.

Это делается для того, чтобы избежать текста, который должен содержать комментарии.

так вот условия комментария

  1. начинается с = >> /* comment
  2. за которым следует = >> ничего
  3. затем = >> */

Это удаляет блоки комментариев:

 preg_replace('%/\*\s+comment\s+.*?\*/%s', '', $string) 

И это избавится от устаревшего пробела:

 preg_replace('%/\s*\*\s+comment\s+.*?\*/\s*%s', '', $string) 

Вот тестовый скрипт:

 #!/usr/bin/php <?php $string = <<<EOS /* comment [comment goes here] */ /* comment please do not delete the lines below */ [I am a special line so I should not be changed ] /* comment please do not delete the line above */ EOS; print $string; print "\n---\n"; print preg_replace('%/\*\s+comment\s+.*?\*/%s', '', $string); print "\n---\n"; print preg_replace('%/\s*\*\s+comment\s+.*?\*/\s*%s', '', $string); ?> 

Выход с PHP 5.3.4:

 /* comment [comment goes here] */ /* comment please do not delete the lines below */ [I am a special line so I should not be changed ] /* comment please do not delete the line above */ --- [I am a special line so I should not be changed ] --- [I am a special line so I should not be changed ] 

Кажется, чтобы сделать работу 🙂

preg_replace("(\\/\\*[\s]*?comment[\\d\\D]*?[\s]*?\\*\\/)",'',$str)

Как я узнал?

хорошо этот сайт просто tooooo amazing 🙂

http://txt2re.com/index.php3