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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Поиск содержимого массива в строке и выделение

Сообщения:  [1-5] 

 
 автор: hell_riser   (15.06.2006 в 22:35)   письмо автору
 
   для: NFR   (15.06.2006 в 10:01)
 

Спасибо я нашёл другую функцию (str_ireplace) .

<?php 
$keywords 
= array("Вася""Петя""Рома"); 
$str "Вася дружит с Петей, а не с Ромой"
for(
$i=0;$i<count($keywords);$i++) 

// проверка проходит без учёта регистра
$mess str_ireplace("$keywords_php[$i]","<font color='#184800'><b>$keywords[$i]</b></font>",$str); 

?>

   
 
 автор: NFR   (15.06.2006 в 10:01)   письмо автору
 
   для: hell_riser   (14.06.2006 в 22:58)
 

Без учёта регистра:

<?php 
$keywords 
= array("/Вася/i""/Петя/i""/Рома/i"); 
$str "Вася дружит с Петей, а не с Ромой"

for(
$i=0;$i<count($keywords);$i++) 

$str ereg_replace("$keywords[$i]","<u>$keywords[$i]</u>",$str); 


echo 
$str
?> 

   
 
 автор: hell_riser   (14.06.2006 в 22:58)   письмо автору
 
   для: NFR   (14.06.2006 в 21:30)
 

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

   
 
 автор: NFR   (14.06.2006 в 21:30)   письмо автору
 
   для: hell_riser   (14.06.2006 в 18:04)
 

можно вот так:

<?php 
$keywords 
= array("Вася""Петя""Рома"); 
$str "Вася дружит с Петей, а не с Ромой"

for(
$i=0;$i<count($keywords);$i++)
{
$str str_replace("$keywords[$i]","<u>$keywords[$i]</u>",$str);
}

echo 
$str;
?> 

PS Заменяет только точные совпадения. Напрмер: в данном примере "Вася" в массиве равен "Вася" в строчке, но "Петя" в массиве не равен "Петей" в строчке.
PSS Можно попробовать исправить это с помощью рег.выражений.

   
 
 автор: hell_riser   (14.06.2006 в 18:04)   письмо автору
 
 

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

<?php
// Допустим есть такой массив:
 
$keywords = array("Вася""Петя""Рома");
// Есть строка:
 
$str "Вася дружит с Петей, а не с Ромой";
// Ищем соответствие в массиве
 
$strin in_array($keywords$str);
?>

А теперь вопрос.
Как мне выделить в строке(к примеру андерлайном) значения совпадающие со значениями в массиве???
Заранее спасибо. :)

   

Сообщения:  [1-5] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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