feat: Add IngoreCase support

This commit is contained in:
2024-01-02 22:04:39 +00:00
parent 89972d8b4e
commit 0c41df325b

View File

@@ -14,8 +14,9 @@ import (
// Panics and shows info if arguments are invalid
func ProcessConsoleArguments() (*models.GrepConfigInternal, error) {
var args struct {
Pattern string `arg:"positional" help:"Regex for lines to match"`
Path string `arg:"positional" default:".*" help:"extra RegEx for paths to match"`
Pattern string `arg:"positional" help:"Regex for lines to match"`
Path string `arg:"positional" default:".*" help:"extra RegEx for paths to match"`
IgnoreCase bool `arg:"-i" help:"ignore case distinctions in patterns and data"`
}
arg.MustParse(&args)
@@ -31,6 +32,9 @@ func ProcessConsoleArguments() (*models.GrepConfigInternal, error) {
return nil, fmt.Errorf("unable to compile path pattern Regexp: %v", args.Path)
}
if args.IgnoreCase {
args.Pattern = "(?i)" + args.Pattern
}
res.TextPattern, err = regexp.Compile(args.Pattern)
if err != nil {
return nil, fmt.Errorf("unable to compile text pattern Regexp: %v", args.Pattern)