Skip to content

cristalhq/natsort

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

natsort

build-img pkg-img reportcard-img coverage-img version-img

Natural sorting in Go, see Wikipedia.

Features

  • Fast.
  • Simple API.
  • Dependency-free.

See these docs for more details.

Install

Go version 1.18+

go get github.com/cristalhq/natsort

Example

files := []string{"img12.png", "img10.png", "img2.png", "img1.png"}

fmt.Println("Lexicographically:")

sort.Strings(files)
for _, f := range files {
	fmt.Println(f)
}

fmt.Println("\nNaturally:")

natsort.Sort(files)
for _, f := range files {
	fmt.Println(f)
}

// Output:
// Lexicographically:
// img1.png
// img10.png
// img12.png
// img2.png
//
// Naturally:
// img1.png
// img2.png
// img10.png
// img12.png

See examples: example_test.go.

License

MIT License.