Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: eregi и квадратные скобки
 
 автор: Crux   (26.01.2006 в 11:45)   письмо автору
 
 

/*что-то я не соображаю... и медленно впадаю в транс*/

наверное для каждого веб-программиста приходит время когда неоходимо поработать с псевдокодом или BBcode, вот и я созрел и предстал пред такой необходимостью, но наткнулся на проблему.

допустим есть строка псевдокода:

<?
$bbcode_text
="[a href='#' class=\"menu\" style='width:10px']click me[/a]";
?>


мне необходимо отсюда выдернуть перечень атрибутов

href='#' class=\"menu\" style='width:10px'


использую функцию eregi (поидее доолжно всё работать)

<?
eregi 
("(.*)\[a([^\]]+)\](.*)\[/a\](.*)",$bbcode_text,$regs  );
?>


но почему-то ожидаемого результата непроисходит,
массив $regs отсаётся полностью пуст, даже $regs[0].

мне кажется что проблема заключается в квадратных скобках, но не пойму в чём?
люди хелп....

   
 
 автор: cheops   (26.01.2006 в 14:39)   письмо автору
 
   для: Crux   (26.01.2006 в 11:45)
 

Да вы лучше не используйте POSIX-регулярные выражения, их всё равно из PHP 6 исключат, используйте Perl-выражения - они более удобны.
<?php
  $bbcode_text 
"[a href='#' class=\"menu\" style='width:10px']click me[/a]"
  
$pattern "|\[a([^\]]+)\](.*)\[/a\]|isU";
  
preg_match($pattern$bbcode_text$out);
  echo 
$out[1]."<br>";
  echo 
$out[2]."<br>";
?>

   
 
 автор: Crux   (26.01.2006 в 16:15)   письмо автору
 
   для: cheops   (26.01.2006 в 14:39)
 

понятно, попробуем.

а почему Вы не упомянули в книги что POSIX-регулярные выражения исключат из PHP 6?

   
 
 автор: cheops   (26.01.2006 в 19:54)   письмо автору
 
   для: Crux   (26.01.2006 в 16:15)
 

Дело в том, что объявлено об этом было только в августе 2005 года... во второй издании "Самоучитель PHP 5" об этом уже упоминается.

   
 
 автор: DDK   (26.01.2006 в 20:10)   письмо автору
 
   для: Crux   (26.01.2006 в 16:15)
 

А почему авторы книги должны уметь гадать на кофейной гуще и знать, что будет завтра ?!...

   
 
 автор: Crux   (26.01.2006 в 21:42)   письмо автору
 
   для: DDK   (26.01.2006 в 20:10)
 

меня мало интересует на чём и как умеют гадать авторы.

я задал вполне закономерный вопрос и получил исчерпывающий ответ.
и данный ответ добавил плюсик к тому чтоб я приобрёл второе издание.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования