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]   

> Описание: фунция возвращающая целое слово по его части из строки
myocean
Отправлено: 19 Ноября, 2011 - 19:53:16
Post Id


Гость


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


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




Здравствуйте...

Подскажите, как можно написать функцию, чтобы на выходе получить массив слов (полных) из строки по их части...

Например:
PHP:
скопировать код в буфер обмена
  1. $str = "The quick brown fox jumps over the lazy dog, The quick brown fox jumps over the Lazy dog"; // Строка для поиска
  2. $word = "azу"; часть или все слово


Поиск без учета регистра, но на выходе нужно получить массив слов без смены их регистра...


PHP:
скопировать код в буфер обмена
  1. function seach_word($str, $word){
  2. $full_word = array();
  3.  
  4. ?????????
  5.  
  6.  return $full_word;
  7. }



То есть в данном случае:

PHP:
скопировать код в буфер обмена
  1. $words = seach_word($str, $word);


Должны получить lazy и Lazy!

(Отредактировано автором: 19 Ноября, 2011 - 19:55:10)

 
 Top
Bio man
Отправлено: 19 Ноября, 2011 - 20:14:00
Post Id


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


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


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




PHP:
скопировать код в буфер обмена
  1. function seach_word($str, $needle){
  2.    $full_word = array();
  3.    $str_words = explode(' ', $str);
  4.    foreach($str_words as $word) {
  5.       if(strtolower($word) == strtolower($needle)) $full_word[] = $word;
  6.    }
  7.    return $full_word;
  8. }

(Добавление)
тут все знаки препинания будут частью слова, лучше регуляркой пройтись но в регулярках я полный 0

(Отредактировано автором: 19 Ноября, 2011 - 20:14:44)

 
 Top
Alek
Отправлено: 19 Ноября, 2011 - 22:09:23
Post Id


Новичок


Покинул форум
Сообщений всего: 52
Дата рег-ции: Март 2011  
Откуда: Набережные Челны


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




myocean пишет:


Например:
PHP:
скопировать код в буфер обмена
  1. $str = "The quick brown fox jumps over the lazy dog, The quick brown fox jumps over the Lazy dog"; // Строка для поиска
  2. ...
  3.  


Должны получить lazy и Lazy!

регуляркой можно так:

(Отредактировано автором: 19 Ноября, 2011 - 22:09:45)

 
 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