diff --git a/internal/re/regexp.go b/internal/re/regexp.go index cf978d5..dad5079 100644 --- a/internal/re/regexp.go +++ b/internal/re/regexp.go @@ -211,6 +211,9 @@ func (this *Regexp) parseKeyword(keyword []rune) (result []rune) { } if keyword[index-1] != '\\' { if r == '{' && (braceZero.MatchString(string(keyword[index:])) || braceZero2.MatchString(string(keyword[index:]))) { // r {0, ...} + if len(result) == 0 { + return nil + } return result[:len(result)-1] } @@ -221,6 +224,9 @@ func (this *Regexp) parseKeyword(keyword []rune) (result []rune) { if index == 0 { return nil } + if len(result) == 0 { + return nil + } return result[:len(result)-1] } if r == '\\' || r == '\b' {