Помощник
|
выделяем слово |
Salikhoff_hb
|
Сообщение
#1
|
||
|
|
||
|
|||
zabmix |
18.4.2011, 17:36;
Ответить: zabmix
Сообщение
#2
|
|
[PHP]
/* искомое слово */ $nauti = 'сайт'; $text = 'В интернете столько сайтов! Что сайт на сайте сайтом.'; /* Убираем лишние пробелы */ $text = preg_replace("/[\s\s+]/", " ", $text); /* делим на слова */ $slova = explode(" ", $text); $text=""; foreach($slova as $k => $slovo) { /* если нашли слово или часть в слове*/ if(preg_match("/$nauti/i", $slovo)) { $slovo = "<b>$slovo</b>"; } /* вновь собираем картинку прежнего вида с веделеным словом */ $text .= " ".$slovo; } /* Убираем лишние пробелы */ $text = preg_replace("/[\s\s+]/", " ", $text); [/PHP] P.S Можно даже посчитать сколько нашли слов, добавив ну к примеру переменную $i++ в IF |
|
|
Salikhoff_hb
|
Сообщение
#3
|
|
zabmix, а как нить попроще нельзя?
|
|
|
zabmix |
18.4.2011, 17:53;
Ответить: zabmix
Сообщение
#4
|
|
Это еще просто, к тому же там если в верхнем регистре написано, выведет как в оригинале. Вот как и просили:
[PHP] /* искомое слово */ $nauti = 'САЙТ'; $text = 'В интернете столько сайтов! Что сайт на сайте сайтом.'; /* Убираем лишние пробелы */ $text = preg_replace("/[\s\s+]/", " ", $text); /* делим на слова */ $slova = explode(" ", $text); $text=""; $tnauti = mb_strtolower($nauti); foreach($slova as $k => $slovo) { $tslovo = mb_strtolower($slovo); if(preg_match("/$tnauti/i", $tslovo)) { $slovo = (preg_match("/[A-ZА-Я]/i", $slovo) ? mb_strtoupper($slovo) : $slovo); $slovo = "<b>$slovo</b>"; } /* вновь собираем картинку прежнего вида с веделеным словом */ $text .= " ".$slovo; } /* Убираем лишние пробелы */ $text = preg_replace("/[\s\s+]/", " ", $text); echo $text; [/PHP] |
|
|
zabmix |
18.4.2011, 18:22;
Ответить: zabmix
Сообщение
#5
|
|
|
Ну короче, ну просто не придумаешь.
[PHP]/* искомое слово */ $nauti = 'САЙТ'; $text = 'В интернете столько сайтов! Что сайт на сайте сайтом.'; //$text = mb_strtolower($text); $text = preg_replace( "/(".mb_strtolower($nauti)."[А-Яа-яA-Za-z]+)/e", "(preg_match('/([А-ЯA-Z]+)/', $nauti) ? mb_strtoupper('<b>\\1</b>') : '<b>\\1</b>')", $text );[/PHP]
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
UnionPharm - новое слово в европейской фарме! | 3 | UnionPharm | 3260 | 12.11.2019, 13:49 автор: Sergey_rx |
|
По умолчанию UnionPharm - новое слово в европейской фарме! | 0 | UnionPharmDm | 1632 | 9.4.2019, 15:52 автор: UnionPharmDm |
|
Мы заставляем каждое слово работать на вас! | 0 | Yul_hb | 2547 | 4.9.2012, 20:01 автор: -Yul- |
|
Простой вопрос, не могу найти где удаляется слово "Категории" на моем сайте | 2 | Anton1122 | 5948 | 30.6.2012, 21:51 автор: -Anton1122- |
Текстовая версия | Сейчас: 29.3.2024, 10:53 |