строки:
"Купить Металлические() входные @ & * ^ %двери: . . . . в -Москве и России 100р. 100 руб. 1000 рублей. 100 ₽"
убрать все символы, что не пробел, не буквы utf8, а также:
(рублей\.)
(руб\.)
(р\.)
и символ ₽
делаю так: "/[^(рублей)\.|(руб)\.|(\d\s?р)\.|(₽)|\s|\w]+/iu" для preg_replace - но оставляет 4 точки ". . . .".
Сможет кто-нибудь подсказать?
Итоговый результат приложи пожалуйста, каким ты его видишь и исходную строку полностью
brew search grex
мне так и не ответил
нужен такой: "Купить Металлические() входные двери в Москве и России 100р. 100 руб. 1000 рублей. 100 ₽" выходит такой: "Купить Металлические() входные двери . . . . в Москве и России 100р. 100 руб. 1000 рублей. 100 ₽" исходная строка: "Купить Металлические() входные @ & * ^ %двери: . . . . в -Москве и России 100р. 100 руб. 1000 рублей. 100 ₽"
ну добавь следующей строчкой mb_str_replace или как там и замени 4 точки на ''
Если бы все так просто. Это семпл, в жизни будет веселее.
[абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ.₽\s]* лови, збс работает
нет, вот так: "()@&*^%:-1001001000100" в итоге родил от обратного: $txt="Купить Металлические() входные @ & * ^ %двери: . . . . в -Москве и России 100р. 100 руб. 1000 рублей. 100 ₽"; preg_match_all("/(рублей\.|руб\.|р\.|\s|\w|\d|₽)+/ui", $txt, $matches); dump( implode(' ', $matches[0])); выдает как надо "Купить Металлические входные двери в Москве и России 100р. 100 руб. 1000 рублей. 100 ₽" пробелы лишние потом только прибить
я не знаю где вы тестируете, я тестирую на regex101.com
Обсуждают сегодня