sortorder – github.com/fvbommel/sortorder Index | Files | Directories

package sortorder

import "github.com/fvbommel/sortorder"

Package sortorder implements sort orders and comparison functions.

Currently, it only implements so-called "natural order", where integers embedded in strings are compared by value.

Index

Functions

func NaturalLess

func NaturalLess(str1, str2 string) bool

NaturalLess compares two strings using natural ordering. This means that e.g. "abc2" < "abc12".

Non-digit sequences and numbers are compared separately. The former are compared bytewise, while digits are compared numerically (except that the number of leading zeros is used as a tie-breaker, so e.g. "2" < "02")

Limitation: only ASCII digits (0-9) are considered.

Types

type Natural

type Natural []string

Natural implements sort.Interface to sort strings in natural order. This means that e.g. "abc2" < "abc12".

Non-digit sequences and numbers are compared separately. The former are compared bytewise, while digits are compared numerically (except that the number of leading zeros is used as a tie-breaker, so e.g. "2" < "02")

Limitation: only ASCII digits (0-9) are considered.

func (Natural) Len

func (n Natural) Len() int

func (Natural) Less

func (n Natural) Less(i, j int) bool

func (Natural) Swap

func (n Natural) Swap(i, j int)

Source Files

doc.go natsort.go

Directories

PathSynopsis
casefolded
Version
v1.1.0 (latest)
Published
Mar 18, 2023
Platform
js/wasm
Last checked
now

Tools for package owners.