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 :: Вопрос по регулярке

 PHP.SU

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


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

> Без описания
GutsOut
Отправлено: 28 Апреля, 2014 - 16:20:10
Post Id


Новичок


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


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




Здравствуйте. Имеем текст след. вида:

Н.А. Дубинский
Уплата утилизационного сбора при ввозе автомобилей в Республику Беларусь. Часть 1
В статье описан порядок и особенности уплаты утилизационного сбора при ввозе автомобилей на территорию Республики Беларусь.
В.Н. Лемеш
Порядок действий в связи с отменой в 2014 году амортизационной премии
В материале описан порядок и особенности бухгалтерского учета объектов, по которым на счетах бухгалтерского учета за период действия льготы по амортизационной премии были произведены соответствующие записи на счетах бухгалтерского учета.
Е.А. Авчинникова
Учет процентов по кредитам
Несмотря на кажущуюся простоту, учет процентов по кредитам до сих пор вызывает массу вопросов, особенно в части налогового учета. Автором рассмотрены особенности и проблемные моменты учета процентов по кредитам и займам.
И.Е. Демидович
Начисление пособий по временной нетрудоспособности работникам резидентов Парка высоких технологий
В статье описаны особенности расчета и начисления пособий по временной нетрудоспособности работникам резидентов Парка высоких технологий, а также приведен ряд практических ситуаций.
Л.И. Пиянзина
Расчет численности работников для целей применения особых режимов налогообложения
В материале в примерах описана методика расчета численности работников для целей применения особых режимов налогообложения.

Задача такая - распихать статьи по массиву т.е.:
[0] => 'Н.А. Дубинский
Уплата утилизационного сбора при ввозе автомобилей в Республику Беларусь. Часть 1
В статье описан порядок и особенности уплаты утилизационного сбора при ввозе автомобилей на территорию Республики Беларусь.'
...
[4] => 'Л.И. Пиянзина
Расчет численности работников для целей применения особых режимов налогообложения
В материале в примерах описана методика расчета численности работников для целей применения особых режимов налогообложения.'

Что надо добавить/изменить в моей регулярке
PHP:
скопировать код в буфер обмена
  1. "#[А-Я]\.[А-Я]\.\s*[А-Я][а-я]+\s*(.+)[А-Я]\.[А-Я]\.\s*[А-Я][а-я]*#s"
чтобы сохранялся текст до первой попавшейся фамилии?
 
 Top
Stierus Супермодератор
Отправлено: 28 Апреля, 2014 - 17:08:35
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




Добрый день. Если бы передо мной стояла такая задача - я бы читал построчно. Если строка проходит под регулярку автора - сохраняем его, все, что будет дальше - пишем к нему и так до тех пор покан е доходим до следующего автора или конца.

Но если вам нужно именно регулярку, то выглядеть она будет как-то так:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $str = '
  3. Н.А. Дубинский
  4. Уплата утилизационного сбора при ввозе автомобилей в Республику Беларусь. Часть 1
  5. В статье описан порядок и особенности уплаты утилизационного сбора при ввозе автомобилей на территорию Республики Беларусь.
  6. В.Н. Лемеш
  7. Порядок действий в связи с отменой в 2014 году амортизационной премии
  8. В материале описан порядок и особенности бухгалтерского учета объектов, по которым на счетах бухгалтерского учета за период действия льготы по амортизационной премии были произведены соответствующие записи на счетах бухгалтерского учета.
  9. Е.А. Авчинникова
  10. Учет процентов по кредитам
  11. Несмотря на кажущуюся простоту, учет процентов по кредитам до сих пор вызывает массу вопросов, особенно в части налогового учета. Автором рассмотрены особенности и проблемные моменты учета процентов по кредитам и займам.
  12. И.Е. Демидович
  13. Начисление пособий по временной нетрудоспособности работникам резидентов Парка высоких технологий
  14. В статье описаны особенности расчета и начисления пособий по временной нетрудоспособности работникам резидентов Парка высоких технологий, а также приведен ряд практических ситуаций.
  15. Л.И. Пиянзина
  16. Расчет численности работников для целей применения особых режимов налогообложения
  17. В материале в примерах описана методика расчета численности работников для целей применения особых режимов налогообложения.';
  18.  
  19. $data = array();
  20.  
  21. $res = preg_match_all('/([а-яА-ЯЁё]{1}[.][а-яА-ЯЁё]{1}[.]{1}\s[а-яА-ЯЁё]+)(.*?)(?=[а-яА-ЯЁё]{1}[.][а-яА-ЯЁё]{1}[.]{1}\s[а-яА-ЯЁё]+)/msu', $str, $data, PREG_SET_ORDER);
  22.  
  23. var_export($data);
 
My status
 Top
GutsOut
Отправлено: 29 Апреля, 2014 - 20:03:23
Post Id


Новичок


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


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




Большое спасибо, то что нужно. Я замети вы пишите класс [а-яА-ЯЁё]- получается "Ё" не входит по умолчанию в класс [а-яА-Я]?
 
 Top
Stierus Супермодератор
Отправлено: 29 Апреля, 2014 - 20:49:06
Post Id



Рекордсмен по количеству сообщений за 7 дней


Покинул форум
Сообщений всего: 2132
Дата рег-ции: Дек. 2008  
Откуда: Москваль


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




да
 
My status
 Top
GutsOut
Отправлено: 03 Мая, 2014 - 10:12:34
Post Id


Новичок


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


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




Подскажите, пожалуйста, на счет такого текста(ниже). Задача аналогичная - распихать статьи по массиву. Как я понимаю тут мы должны отталкиваться от ссылки: т.е.
1.Находим ссылку
2.Захватываем предыдущую строку(заголовок)
3.Ищем следующую ссылку(ссылка следующей статьи)
4.Исключаем ее и предыдущую строку(заголовок следующей статьи)

Подскажите, пожалуйста, как это реализовать или другую идею.

Собственно, сам текст:
О тарифах на услуги транспортных терминалов
https://url/library/text/id/50232111
Постановлением установлены предельные максимальные тарифы на услуги транспортных железнодорожных и автомобильных терминалов.
Утверждена Инструкция о порядке установления и применения тарифов на услуги транспортных железнодорожных и автомобильных терминалов, действие которой распространяется на все юридические лица и индивидуальных предпринимателей, занимающихся предоставлением услуг на территории Республики Беларусь (далее — субъекты предпринимательской деятельности).
Инструкцией установлено, что:
• субъекты предпринимательской деятельности устанавливают тарифы на услуги, которые не должны превышать установленные предельные максимальные тарифы...
О некоторых вопросах развития единого расчетного и информационного пространства в Республике Беларусь
https://url/library/text/id/2111675
В соответствии с Постановлением республиканское унитарное предприятие почтовой связи «Белпочта» определено платежным агентом единого расчетного и информационного пространства.
О порядке выплаты в 2014 году надбавок за реализованную сельскохозяйственную продукцию
https://url/library/text/id/52342121
Во исполнение п. 2 и на основании подп. 1.3 постановления Совета Министров Республики Беларусь от 22 января 2014 г. № 53 «О надбавках за реализованную сельскохозяйственную продукцию» Брестский областной исполнительный комитет решил установить, что в 2014 году надбавки из средств областного бюджета за реализованную сельскохозяйственную продукцию выплачиваются в соответствии с п. 1 постановления Совета Министров Республики Беларусь от 22 января 2014 г. № 53 «О надбавках за реализованную сельскохозяйственную продукцию» сельскохозяйственным организациям, в т.ч. крестьянским (фермерским) хозяйствам, а также организациям, осуществляющим предпринимательскую деятельность по производству (выращиванию, разведению) сельскохозяйственной продукции, льнозаводам, выплата надбавок за реализованную сельскохозяйственную продукцию производится в пределах средств, предусмотренных в областном бюджете.
(Добавление)
По сути мне бы только подсказку: как взять строго предыдущую строку, после того как мы нашли #https:.+?\n(.+?)https:\/\/#s
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB