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

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

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

 

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

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

тема: Извлечь фрагмент текста после private[MRE] private[User]
 
 автор: MRE   (01.07.2007 в 12:47)   письмо автору
 
 

Есть строка
private[MRE] private[User] Текст
Количество private может быть любым, но они должны все идти перед тестом сообщения, то есть если private[MRE] текст private[User] , то выхватывается только первый private
Помогите написать регулярку, чтобы выцепить все значения в квадратных скобках после private.

   
 
 автор: kasmanaft   (01.07.2007 в 13:41)   письмо автору
 
   для: MRE   (01.07.2007 в 12:47)
 

То есть?
private[MRE] текст private[User] - отсюда нужно вытащить "MRE" ?
private[MRE] private[User] Текст - а отсюда "MRE" и "User" ?

   
 
 автор: MRE   (01.07.2007 в 14:54)   письмо автору
 
   для: kasmanaft   (01.07.2007 в 13:41)
 

угу, соответственно должно быть актуально и для более чем 2 private, в общем как только после очередного private[ ] встречается выражение отличенное от private[ ] дальше не ищем.

   
 
 автор: kasmanaft   (01.07.2007 в 20:02)   письмо автору
 
   для: MRE   (01.07.2007 в 14:54)
 

Одним рег. выражением, наверное, не обойтись...

<?php
// строка всегда начинается с private? (если он есть)
$text "private[MRE] private[User] Текст private[User2]";
if (
preg_match_all("#^(private\[[^\]]+\]\s*)+#"$text$regs))
   
preg_match_all("#private\[([^\]]+)\]#"$regs[0][0], $regs);
print_r($regs[1]);
?>


А нельзя сделать private[MRE,User] ?
Так было бы удобнее...

   
 
 автор: MRE   (02.07.2007 в 10:51)   письмо автору
 
   для: kasmanaft   (01.07.2007 в 20:02)
 

Спасибо, да наверное удобнее, но уже сделал первым способом.
Но неудобно добавлять при клике по нику будет, хотя и это можно сделать - везде свои сложности ;)

   
Rambler's Top100
вверх

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