Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: preg_match/preg_match_all

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Переворот строки
Олег12
Отправлено: 07 Декабря, 2016 - 12:56:17
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




Здраствуйте, помогите советом, пытаюсь выполнить поиск с помощью preg_match_all с конца текстового файла в начало, но никак не получается. Читал, там надо что-то наколдовать в offset, больше информации не нашел. Пример моего поиска:
PHP:
скопировать код в буфер обмена
  1. preg_match_all($pattern_nachalo2, $stroka, $nachalo_out, PREG_SET_ORDER);
.

Наибольшую сложность вызывает сам текст, т.к. strrev с ним не справляется. Кусочек текста:
WV÷piatra-neamt¬AN÷y¬MW÷16¬~QA÷1¬QB÷8Y3PaTEp¬QC÷1480793400|¬QB÷YJ9kjBW1¬QC÷1480777200|¬QB÷xAa2Mxwn¬QC÷1480863600|¬~~A1÷da7b9807e5c930e2185f3f1e4ce58c9e¬~


Заранее спасибо.
 
 Top
OrmaJever Модератор
Отправлено: 07 Декабря, 2016 - 13:48:36
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




а какая стоит задача?


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Олег12
Отправлено: 07 Декабря, 2016 - 15:30:49
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




Парсить большой текст ( не разбивать) две группы небольших текстов, при этом начинающихся с одинаковых символов, а заканчивающихся разными:
PHP:
скопировать код в буфер обмена
  1.  
  2. $pattern_nachalo1 = '#~ZAч(.+)6¬~Z#isU';  
  3. $pattern_nachalo2 = '#~ZAч(.+)n¬~ZAч#isU';
  4.  


Суть в том, если так парсить, то одна группа частично будет включать другую, т.е. текст №1 из группы №1 будет включать в себя текст №1 из группы 1 и текст №1 из группы №2.
А каждый небольшой текст будет также парситься, отсюда неприемлема подобная склейка.
 
 Top
Мелкий Супермодератор
Отправлено: 07 Декабря, 2016 - 15:45:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Попробую ткнуть пальцем в небо:
#~ZAч(.+)n¬~Z(?=Aч)#isU


-----
PostgreSQL DBA
 
 Top
Олег12
Отправлено: 08 Декабря, 2016 - 14:31:51
Post Id


Новичок


Покинул форум
Сообщений всего: 5
Дата рег-ции: Дек. 2016  


Помог: 0 раз(а)




Мелкий пишет:
Попробую ткнуть пальцем в небо:
#~ZAч(.+)n¬~Z(?=Aч)#isU


Не подходит, в чем смысл данной регулярки? Вариационно Aч использовать? А то что там 6¬ на n¬ меняется не смущает?

(Отредактировано автором: 08 Декабря, 2016 - 14:32:38)

 
 Top
Мелкий Супермодератор
Отправлено: 08 Декабря, 2016 - 14:42:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Я вообще не представляю, что вы пытаетесь сделать, что у ват там клеится, а что не склеивается. Поэтому и "ткнуть пальцем в небо".
Смысл в позиционном утверждении, которое не входит в совпадение выражения целиком.


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB