The sorting appears to sort runs of digits, rather than just pure strings.
"14.6" is less than "14.19" as 6 is less than 19, and the rest of the string is the same.
"img0120.jpg" is less than "img1.png" as it is comparing the first 0 to 1 in the second string, as the run of digits in shorter in the second string.
> This function implements a sort algorithm that orders alphanumeric strings in the way a human being would
Although it might not be ordering as you would expect, or possibly hope, it is working in a way that makes a reasonably amount of sense. When you look at it from a certain angle. While squinting.
As the code has been like that for 14 years, changing the behaviour would not be appropriate, so closing as not a bug.
Feel free to add those examples to the documentation, to avoid other people being surprised.