gobwas / glob

Go glob
MIT License
957 stars 64 forks source link

Error in different order among brace expansions #43

Open chengxuncc opened 4 years ago

chengxuncc commented 4 years ago
package main

import (
    "fmt"

    "github.com/gobwas/glob"
)

func main() {
    fmt.Println("pattern","{,*.}google*")
    g := glob.MustCompile("{,*.}google*")
    fmt.Println("Actual:", g.Match("google.com"), "Expected:", true)
    fmt.Println("Actual:", g.Match("a.google.com"), "Expected:", true)
    fmt.Println("Actual:", g.Match("agoogle.com"), "Expected:", false)
    fmt.Println()

    fmt.Println("pattern","{*.,}google*")
    g = glob.MustCompile("{*.,}google*")
    fmt.Println("Actual:", g.Match("google.com"), "Expected:", true)
    fmt.Println("Actual:", g.Match("a.google.com"), "Expected:", true)
    fmt.Println("Actual:", g.Match("agoogle.com"), "Expected:", false)
}

Output

pattern {,*.}google*
Actual: true Expected: true
Actual: true Expected: true
Actual: false Expected: false

pattern {*.,}google*
Actual: false Expected: true
Actual: false Expected: true
Actual: false Expected: false