<?php
$data = [
'Light Blue1',
'Blue2',
'Blue1',
'Black3',
'Black12',
'Black2'
];
$result = [];
foreach ($data as $value) {
sscanf($value, '%[^0-9]%d', $color, $number);
if (!isset($result[$color]) || $result[$color]['number'] < $number) {
$result[$color] = ['value' => $value, 'number' => $number];
}
}
var_export(array_column($result, 'value'));
preferences:
24.61 ms | 406 KiB | 5 Q