Awesome
hostutils
A golang library for packing and unpacking hosts list
Install
go get github.com/Wing924/hostutils/v2
Examples
package main
import (
"fmt"
"github.com/Wing924/hostutils/v2"
)
func main() {
// Pack
pack1 := hostutils.Pack([]string{"example101z.com", "example102z.com", "example103z.com"})
fmt.Println(pack1) // [example[101-103]z.com]
pack2 := hostutils.Pack([]string{"example101z.com", "example102z.com", "example201z.com"})
fmt.Println(pack2) // [example[101-102,201]z.com]
pack3 := hostutils.Pack([]string{"example01z.com example02z.com"})
fmt.Println(pack3) // [example[01-02]z.com]
// Unpack
unpack1 := hostutils.Unpack([]string{"example[101-103]z.com"})
fmt.Println(unpack1) // [example101z.com example102z.com example103z.com]
unpack2 := hostutils.Unpack([]string{"example[1-2][101-102]z.com"})
fmt.Println(unpack2) // [example1101z.com example1102z.com example2101z.com example2102z.com]
}
Functions
func Normalize(hosts []string) (packedHosts []string)
Normalize Unpack and pack hosts
func NormalizeString(hosts string) (packedHosts []string)
NormalizeString Unpack and pack hosts
func Pack(hosts []string) (packedHosts []string)
Pack Pack full hosts list into short abbreviated hosts.
func PackString(hosts string) (packedHosts []string)
PackString Pack space septated full hosts list into short abbreviated
hosts.
func Unpack(packedHosts []string) (hosts []string)
Unpack Unpack short abbreviated hosts into full hosts list.
func UnpackString(packedHosts string) (hosts []string)
Unpack Unpack space septated short abbreviated hosts into full hosts
list.