gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

ordinals.go (371B)


      1 package humanize
      2 
      3 import "strconv"
      4 
      5 // Ordinal gives you the input number in a rank/ordinal format.
      6 //
      7 // Ordinal(3) -> 3rd
      8 func Ordinal(x int) string {
      9 	suffix := "th"
     10 	switch x % 10 {
     11 	case 1:
     12 		if x%100 != 11 {
     13 			suffix = "st"
     14 		}
     15 	case 2:
     16 		if x%100 != 12 {
     17 			suffix = "nd"
     18 		}
     19 	case 3:
     20 		if x%100 != 13 {
     21 			suffix = "rd"
     22 		}
     23 	}
     24 	return strconv.Itoa(x) + suffix
     25 }