Skip to content

Commit

Permalink
chore: Add filter for include-all-proxies
Browse files Browse the repository at this point in the history
  • Loading branch information
xishang0128 committed May 13, 2024
1 parent 3ae4014 commit fd7ecc0
Showing 1 changed file with 18 additions and 1 deletion.
19 changes: 18 additions & 1 deletion adapter/outboundgroup/parser.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ import (
"fmt"
"strings"

"github.com/dlclark/regexp2"

"github.com/metacubex/mihomo/adapter/outbound"
"github.com/metacubex/mihomo/adapter/provider"
"github.com/metacubex/mihomo/common/structure"
Expand Down Expand Up @@ -70,7 +72,22 @@ func ParseProxyGroup(config map[string]any, proxyMap map[string]C.Proxy, provide
groupOption.Use = append(groupOption.Use, AllProviders...)
}
if groupOption.IncludeAllProxies {
groupOption.Proxies = append(groupOption.Proxies, AllProxies...)
if groupOption.Filter != "" {
var filterRegs []*regexp2.Regexp
for _, filter := range strings.Split(groupOption.Filter, "`") {
filterReg := regexp2.MustCompile(filter, 0)
filterRegs = append(filterRegs, filterReg)
}
for _, p := range AllProxies {
for _, filterReg := range filterRegs {
if mat, _ := filterReg.FindStringMatch(p); mat != nil {
groupOption.Proxies = append(groupOption.Proxies, p)
}
}
}
} else {
groupOption.Proxies = append(groupOption.Proxies, AllProxies...)
}
}

if len(groupOption.Proxies) == 0 && len(groupOption.Use) == 0 {
Expand Down

0 comments on commit fd7ecc0

Please sign in to comment.