package main
import (
"fmt"
"sort"
"strconv"
"strings"
)
func extractNumber(s string) int {
pos := strings.LastIndex(s, " ")
n, _ := strconv.Atoi(s[pos + 1:])
return n
}
func main() {
slice := []string{
"Python 4", "C 9", "C++ 5", "C# 6",
"Java 1", "PHP 7", "Go 2",
}
sort.Slice(slice, func(i, j int) bool {
return extractNumber(slice[i]) < extractNumber(slice[j])
})
fmt.Println(slice)
}
/*
run:
[Java 1 Go 2 Python 4 C++ 5 C# 6 PHP 7 C 9]
*/