Tim Edwards | 7519dfb | 2022-02-10 11:39:09 -0500 | [diff] [blame] | 1 | #!/usr/bin/env python3 |
2 | # | ||||
3 | # natural_sort.py | ||||
4 | # Natural sort thanks to Mark Byers in StackOverflow | ||||
5 | |||||
6 | import re | ||||
7 | |||||
8 | def natural_sort(l): | ||||
9 | convert = lambda text: int(text) if text.isdigit() else text.lower() | ||||
10 | alphanum_key= lambda key: [ convert(c) for c in re.split('([0-9]+)', key) ] | ||||
11 | return sorted(l, key = alphanum_key) |