- strcmp: documentation ( source)
- array_filter: documentation ( source)
- preg_split: documentation ( source)
- usort: documentation ( source)
- strtolower: documentation ( source)
<?php
$x = '
\mathrm{ABCdef123} none
ABCdef123 \mathit{ABCdef123} none
\mathnormal{ABCdef123} none
\mathcal{ABC}
';
$x = array_filter(preg_split('/\s+/', $x));
usort($x, function ($a, $b) {
return strcmp(strtolower($a), strtolower($b));
});
foreach ($x as $xx) {
echo $xx, "\n";
}