[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Замена текста по корню
Kusss
Возможно ли с помощью регулярки вычленить слово по его корню и изменить все слово целиком ?
Вот пример:
Цитата
Вот приехал сосед из соседней деревни

Заменить на
Цитата
Вот приехал <b>сосед<b> из <b>соседней</b> деревни


И если да, напиши ее .
inpost
Регулярное выражение с этим справляется. Почитай о них wink.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Kusss
Читал уже много раз. Не понимаю я этого. blink.gif
Invis1ble
в русском языке полно однокоренных слов, корень которых различается в разных словоформах
так что нет, регулярки не решат эту задачу

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

dron4ik
я додумался только до поиска вхождения а потом поиск начала слова и до пробела... но это как то тупо... Если представить что префиксов не существует то подойдет.... Короче самому интересно, давайте думать вместе))

если текст не большой то можно разбить строку на массив по пробелам и там искать в цикле вхождение к каждому слову параллельно вычищая знаки препинания...

_____________
Ex3m.com.ua — Активный образ жизни
Invis1ble
что тут думать, нужен словарь специальный для начала

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

S.Chushkin
Цитата (Kusss @ 7.08.2015 - 18:45)
Читал уже много раз. Не понимаю я этого.  :blink:

Ну Вы даёте. :( Это же элементарно.
Тест:
$s = 'Вот приехал сосед из соседней деревни пососедству';
var_dump(htmlentities(preg_replace('/(\b\w*сосед\w*\b)/ui', '<b>$1</b>', $s)));
// "Вот приехал <b>сосед</b> из <b>соседней</b> деревни <b>пососедству</b>"


_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
S.Chushkin
Цитата (Invis1ble @ 7.08.2015 - 19:27)
что тут думать, нужен словарь специальный для начала

Поиск однокоренных слов - это другая тема. ТС просто нужно выделить слово, содержащие кусок кода.

_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
Invis1ble
предлагаю услышать пояснение от ТС насчет этого, а потом уже утверждать что-либо
пока что я не уверен в его цели

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

S.Chushkin
Не важно какая его цель, важно какой он задал вопрос. smile.gif

_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
Razzwan
Общий смысл можно сформировать так: существуют слова, для которых регулярка вполне подойдет. Для этого нужно, чтоб корень содержал не менее (это предположение) 5-ти символов и не изменялся. Под это правило подходит "сосед". Однако поиск однокоренных в одном тексте - это задача так себе по сложности. Получается все целые куски из 5ти символов нужно сравнивать со всем остальным текстом.

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

_____________
Youtube канал WebDeveloper->Run()
Сайт для души
Gitter
Kusss
Цитата (S.Chushkin @ 7.08.2015 - 18:54)
Цитата (Invis1ble @ 7.08.2015 - 19:27)
что тут думать, нужен словарь специальный для начала

Поиск однокоренных слов - это другая тема. ТС просто нужно выделить слово, содержащие кусок кода.

Огромное спасибо.
Да, мне действительно нужно выделить слово содержащее корень.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.