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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
SAD
Отправлено: 24 Октября, 2010 - 10:46:51
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




есть набор строк, нужно найти все строки содержащие текст "Правильный ответ:" в самом начале строки
 
 Top
movEAX
Отправлено: 24 Октября, 2010 - 10:51:04
Post Id



Частый посетитель


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


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




'@^Правильный ответ:.+@mi'


-----
армия.. самое убогое место
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 10:57:17
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




работает,но вот в чем дело
строки такого вида, каждая содержится в элементе массива
Правильный ответ: множество объектов или явлений, объединенных одной закономерностью;
Неправильный ответ1: качественная характеристика изучаемого явления;
Неправильный ответ2: количественная характеристика изучаемого явления;
Неправильный ответ3: набор статистических признаков, отражающих взаимосвязи, которые объективно существуют между явлениями.

мне не нужно,чтобы записывало в массив пустые значения строк, в которых не найден текст

(Отредактировано автором: 24 Октября, 2010 - 11:05:17)

 
 Top
Uchkuma
Отправлено: 24 Октября, 2010 - 11:04:15
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


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




Тада так?
PHP:
скопировать код в буфер обмена
  1. '@\r\nПравильный ответ:.+@'
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 11:07:02
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




подправил свое сообщение
каждая строка элемент массива Улыбка
 
 Top
movEAX
Отправлено: 24 Октября, 2010 - 11:16:21
Post Id



Частый посетитель


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


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




preg_grep


-----
армия.. самое убогое место
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 11:29:49
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




оно, спасибо )
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 14:24:41
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




можно ли найти/вырезать текст до последнего вхождения пробела
например, есть строка
Классификация динамических систем. Системы управления 6;0;0
нужно оставить только Классификация динамических систем. Системы управления
обрезать определенное количество символов с конца не катит, может быть и такое на конце 12;9;21

(Отредактировано автором: 24 Октября, 2010 - 14:28:11)

 
 Top
movEAX
Отправлено: 24 Октября, 2010 - 14:52:21
Post Id



Частый посетитель


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


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




preg_replace( '@\S+$@m', '', 'Классификация динамических систем. Системы управления 6;0;0' );

Удаляет с конца каждой строки не пробельные символы


-----
армия.. самое убогое место
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 14:55:19
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




ешкин кот, регулярные выражения - великая весчь. надо будет заняться их изучением.
спасибо большое, movEAX, спас меня от тупого решения этой проблемы
 
 Top
Uchkuma
Отправлено: 24 Октября, 2010 - 14:55:23
Post Id



Участник


Покинул форум
Сообщений всего: 1539
Дата рег-ции: Март 2010  
Откуда: Киров


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





(Добавление)
movEAX, SAD, вродь задача другая была... Однако
(Добавление)
SAD пишет:
регулярные выражения - великая весчь
Не стоит увлекаться регулярками там, где можно обойтись обычными строковыми функциями.
 
 Top
movEAX
Отправлено: 24 Октября, 2010 - 15:01:03
Post Id



Частый посетитель


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


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




Uchkuma пишет:
Не стоит увлекаться регулярками там, где можно обойтись обычными строковыми функциями.

С этим согласен на все сто. Но знать их не помешает, особенно они бывают полезны при редактировании кода, когда нужно сделать множество схожих замен.


-----
армия.. самое убогое место
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 15:06:45
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




я вот пытаюсь в цикле для массива строк проделать это ,но обрезает только последнюю строку((
(Добавление)
Uchkuma, твой способ это делает, а вот movEAX немного не так, что нужно исправить?
 
 Top
movEAX
Отправлено: 24 Октября, 2010 - 15:15:50
Post Id



Частый посетитель


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


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




Ну, для preg_replace цикл вовсе не нужен.
PHP:
скопировать код в буфер обмена
  1. $arr = array(
  2.     'Классификация динамических систем. Системы управления 6;0;0' ,
  3.     "Классификация динамических систем. Системы управления shfdkjsdfk\r\n" ,
  4.     'Классификация динамических систем. Системы управления !!FD#FDS'
  5. );
  6. print_r ( preg_replace( '@\S+\s*$@m', '',  $arr) );

Но если первый способ работает как надо, то регулярки можно и не использовать)


-----
армия.. самое убогое место
 
 Top
SAD
Отправлено: 24 Октября, 2010 - 15:18:18
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


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




мне просто в цикле надо. ок, тогда воспользуюсь способом Uchkuma
спасибо вам большое Uchkuma, movEAX Улыбка
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB