Автор Тема: регулярные выр. помогите.  (Прочитано 5248 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« : 28 Декабря 2004, 14:59:47 »
мля.. мне тут тестовое задание прислали, а я как лох, не знаю, как правильно сделать :(((

. написать regexp, возвращающий минимальную часть строки, заключенную в тэги “” и “”.

Пример:

Строка:  
somemoreyet another text text text
Результат:
“yet another text”


просто интересно, как такое можно осуществить?
ничего кроме preg_match ("#<text>([^</>]+?)</text>#i"$str$ar);
echo 
$ar[0]."
"
;

в голову не приходит :(((

я лох :((

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #1 : 28 Декабря 2004, 15:53:52 »
пойти что ли повеситься? :(
надоело всё это. учишся-учишся, делаешь-делаешь... какой смысл всё это продолжать? :(

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #2 : 28 Декабря 2004, 16:09:13 »
может быть, почитать что-нибудь?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #3 : 28 Декабря 2004, 16:12:30 »
ты уверен, что выводить тебе надо именно $ar[0]?

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
регулярные выр. помогите.
« Ответ #4 : 28 Декабря 2004, 16:55:35 »
Алексей
у нас есть форум по регекспам.
Посмотри там верхние темы
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #5 : 28 Декабря 2004, 17:05:54 »
Цитировать
RomikChef:
может быть, почитать что-нибудь?

ага, а то я не читал...

Макс
ну, да, ну да.. почитаю....

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
регулярные выр. помогите.
« Ответ #6 : 28 Декабря 2004, 17:11:10 »
Алексей , прочти подсказку, которую дал RomikChef.

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #7 : 28 Декабря 2004, 17:55:00 »
что читать? теорию? я её 3 года читаю.

Оффлайн tserbis

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 496
  • +0/-0
  • 0
    • Просмотр профиля
регулярные выр. помогите.
« Ответ #8 : 28 Декабря 2004, 18:04:21 »
Нет, про
  • .

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
регулярные выр. помогите.
« Ответ #9 : 28 Декабря 2004, 18:05:31 »
Алексей
Попробуй сделать так :

$string
="<text>some<text>more<text>yet another text</text> text</text> text</text>";        
$string=preg_match_all("#<text>([^</>]+?)</text>#i"$string$ar);    
echo 
$ar[0][0];

И получишь свой результат.
Только получится масло масляное ;)
Разум когда-нибудь победит

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #10 : 29 Декабря 2004, 08:46:28 »
Lutik
я чё то не вкурил.. какой результат? ты проверял работоспособность данного блока то?

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
регулярные выр. помогите.
« Ответ #11 : 29 Декабря 2004, 12:31:40 »
Алексей, я немогу понять вообще что тебя смущает в твоем регеспе? Тебе чегото не понравился preg_match вот я тебе и предложил preg_match_all. Только разница между ними, что второй формирует двумерный масив.
Разум когда-нибудь победит

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #12 : 29 Декабря 2004, 15:05:08 »
Lutik
Цитировать
Алексей:
написать regexp, возвращающий минимальную часть строки, заключенную в тэги “” и “”.

Пример:

Строка:
somemoreyet another text text text
Результат:
“yet another text”

Оффлайн Lutik

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 184
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.galiongroup.ru
регулярные выр. помогите.
« Ответ #13 : 29 Декабря 2004, 15:13:38 »
Ну так оно у тебя работает, что тебе еще надо.
Вот твоя минимальная часть строки:
yet another text
Разум когда-нибудь победит

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
регулярные выр. помогите.
« Ответ #14 : 29 Декабря 2004, 18:17:14 »
Lutik
yet another text не покатит

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28