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

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

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

 

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

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

тема: Помогите составить регулярку - выкусить кусок строки после определённого <br />
 
 автор: Trivium   (24.04.2010 в 19:44)   письмо автору
 
 

Всем привет!
Есть строка в ней может быть разное кол-во брэйков (<br />)
Надо выкусить кусок этой строки после определённого брэйка, за которым идёт слово аккумулятор.
Вот пробую такое выражение, и ничего не выкусывает(
preg_match('/<br \/>[a-z\-0-9_]* (.* аккумулятор.*)/Uism', $str, $accum);
Что тут можно изменить?

  Ответить  
 
 автор: baston   (24.04.2010 в 19:48)   письмо автору
 
   для: Trivium   (24.04.2010 в 19:44)
 

А у вас в строке после брейка могут быть пробелы?
Вообще-то эту тема для другого раздела.

  Ответить  
 
 автор: Trivium   (24.04.2010 в 20:09)   письмо автору
 
   для: baston   (24.04.2010 в 19:48)
 

Сори, я не знал, шо появился раздел для регулярок...
Да могут быть пробелы и любой текст.
Примерно так:
Some text<br />Some text<br />Some text<br />Какой-то Аккумулятор

Или так:
<br />Какой-то Аккумулятор

Надо выкусить фразу "Какой-то Аккумулятор".

  Ответить  
 
 автор: Trivium   (27.04.2010 в 15:51)   письмо автору
 
   для: Trivium   (24.04.2010 в 20:09)
 

Я с той задачей справился, но вот не могу понять можно ли в регулярках сделать так, шобы указать строку которая может быть, а может и не быть?
Вот например символы можно указать {afc1} и в таком стиле, а конкретно строку можно задать как-то?
Допустим найти найти все строки где есть "lalala", но они могут начинаться с <br /> а могут и не с него?

  Ответить  
 
 автор: neadekvat   (27.04.2010 в 17:47)   письмо автору
 
   для: Trivium   (27.04.2010 в 15:51)
 

Если строке "lalala" может предшествовать <br />, а может не предшествовать, то зачем вообще этот <br /> в рег.выражении упоминать?

  Ответить  
 
 автор: Trivium   (27.04.2010 в 18:10)   письмо автору
 
   для: neadekvat   (27.04.2010 в 17:47)
 

Ну бывают такие структуры страниц.
Ну в общем можно как-то не конкретные символы проверять, а целую строку сразу?

  Ответить  
 
 автор: neadekvat   (27.04.2010 в 19:46)   письмо автору
 
   для: Trivium   (27.04.2010 в 18:10)
 

Что вы понимаете под строкой и что вы вообще хотите?

  Ответить  
 
 автор: Trivium   (27.04.2010 в 23:12)   письмо автору
 
   для: neadekvat   (27.04.2010 в 19:46)
 

Ну есть возможность проверки символов например так {a-z.l"} и в таком стиле, но это разрешает конкретные символы.
А как разрешить или не разрешить строку?

  Ответить  
 
 автор: Trianon   (28.04.2010 в 00:24)   письмо автору
 
   для: Trivium   (27.04.2010 в 23:12)
 

{a-z.l"}
Это какой-то странный ситаксис.
Регулярные выражения он не напоминает ни разу.
Может стоит в справочник/учебник заглянуть?

  Ответить  
 
 автор: Trivium   (28.04.2010 в 11:21)   письмо автору
 
   для: Trianon   (28.04.2010 в 00:24)
 

Ну если не напоминает то загляни ;-)

  Ответить  
 
 автор: neadekvat   (28.04.2010 в 18:46)   письмо автору
 
   для: Trivium   (28.04.2010 в 11:21)
 

Может вы хотите высказать свою версию, что же заключается в фигурные скобки?

  Ответить  
 
 автор: Trivium   (04.05.2010 в 04:13)   письмо автору
 
   для: neadekvat   (28.04.2010 в 18:46)
 

Имелось в виду обычные скобки

  Ответить  
 
 автор: neadekvat   (04.05.2010 в 07:29)   письмо автору
 
   для: Trivium   (04.05.2010 в 04:13)
 

Обычных скобок не бывает, если чо.
То, что показали вы - фигурные, это вы хрень написали по отношению к рег.выражениям.
Бывают круглые, подставив которые, вы снова получите не то, чего ожидаете.
А нужны вам квадратные.

  Ответить  
 
 автор: imustang   (06.05.2010 в 03:11)   письмо автору
 
   для: Trivium   (24.04.2010 в 19:44)
 

!

  Ответить  
 
 автор: imustang   (06.05.2010 в 03:11)   письмо автору
 
   для: Trivium   (24.04.2010 в 19:44)
 

элементарно

<br\s*\/?>(.*аккумулятор.*)

  Ответить  
 
 автор: Trivium   (11.06.2010 в 01:41)   письмо автору
 
   для: imustang   (06.05.2010 в 03:11)
 

А если строка может быть разной?
Например:
<br />...аккумулятор<br />
<br />...<br />...<br />...<br />...аккумулятор<br />
...аккумулятор

  Ответить  
 
 автор: imustang   (11.06.2010 в 02:16)   письмо автору
 
   для: Trivium   (11.06.2010 в 01:41)
 

так ты определись, либо тебе все вхождения нужны, либо первый, последний, либо под какое-то определенное условие.

  Ответить  
 
 автор: Trivium   (11.06.2010 в 02:23)   письмо автору
 
   для: imustang   (11.06.2010 в 02:16)
 

Так вот прикол в том, шо кол-во брэйков может быть любое... От 0 до ...
И надо между ними найти слово аккумулятор и выкусить вместе со всем шо есть между тэгами.

  Ответить  
 
 автор: Trivium   (21.06.2010 в 00:44)   письмо автору
 
   для: imustang   (11.06.2010 в 02:16)
 

Так как?

  Ответить  
 
 автор: imustang   (21.06.2010 в 15:19)   письмо автору
 
   для: Trivium   (21.06.2010 в 00:44)
 

пофигу сколько брейков, ты условия точно укажи, что тебе требуется.

  Ответить  
 
 автор: Trivium   (22.06.2010 в 01:31)   письмо автору
 
   для: imustang   (21.06.2010 в 15:19)
 

Я ж написал, выше глянь

  Ответить  
Rambler's Top100
вверх

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