<?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'));
- Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- array (
0 => 'Light Blue1',
1 => 'Blue2',
2 => 'Black12',
)
preferences:
94.75 ms | 406 KiB | 5 Q