Есть фраза "высота|толщина кровати(слова "кровати" может и не быть) 21 см (или нет см.)"
Нужна регулярка которая получит сантиметры. Спасибо.
Я думаю, /.*(\d+).*/
должно работать -- просто выделяет из строки подряд идущие цифры, отбрасывая всё остальное.
%(?:высота|толщина)[^\d]*\b(\d+)\b%iu
(?:высота|толщина)
начинает поиск от подстрок высота
или толщина
, они могут быть не словами; ?:
обозначает, что группу не надо захватывать в результат;
[^\d]*
- от нуля и больше символов не являющихся цифрами;
\b
- граница слова, в данном случае - перед цифрой не стоит буква или _
;
(\d+)
- 1 группа захвата состоящая из цифр, которые вам нужны;
\b
- граница слова, в данном случае - за цифрой не стоит буква или _
;
Модификатор i
- регулярка регистро-независимая
Модификатор u
- обрабатываем текст в кодировке UTF-8
Тест https://regex101.com/r/zPlsQZ/1
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Для установки Bitrix в кодировке UTF-8 требуется параметру mbstringfunc_overload присвоить значение 2 (по умолчанию там 0)
Не подскажите почему на главной выводит слайдер через migx а на другой страницу не выводит
При оправке формы с сайта время от времени получаем ошибку