@nikitoshq

Как вытянуть цвет из строки через PHP?

Есть массив с такими строками:

3924 Ламінат Parfe Floor 7/32 Дуб Мірандо (2,663)/10шт
2596 Ламінат Kappa 8 Дуб Ахілл (2,397 м2)/9шт
2593 Ламінат Excellence 8 Дуб Бельфаст (2,397)/9шт
3504 Ламінат Excellence 8 Дуб Романський (2,397)/9шт
3280 Ламінат Marine 10/32 Дуб Тихий фаска (1,535м2)/7 шт

Из него нужно вытянуть коллекцию и цвет. Пример:
Из строки "3924 Ламінат Parfe Floor 7/32 Дуб Мірандо (2,663)/10шт" получить коллекцию "Parfe Floor 7/32" и цвет "Дуб Мірандо". Как это можно сделать средствами PHP? Пробовал через preg_match_all, нечего толкового не получилось.
  • Вопрос задан
  • 93 просмотра
Решения вопроса 2
Stalker_RED
@Stalker_RED
Ламінат (.+ \d+(?:\/\d+)?) ([^\(]+)
https://regex101.com/r/1PgPNP/1
Ответ написан
Tomio
@Tomio
backend developer (python, php)
$pattern = '~.*\d+\/?\d? (.*) \(.*~';
$string = '3924 Ламінат Parfe Floor 7/32 Дуб Мірандо (2,663)/10шт';
preg_match_all($pattern, $string, $matches);
$color = $matches[1][0];

echo $color;
>>> Дуб Мірандо


Если у вас все записи будут в таком же виде, то данная регулярка вытащит вам цвет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы