mirror of
https://gh.catmak.name/https://github.com/mihomo-party-org/mihomo-party
synced 2025-12-27 13:10:30 +08:00
fix: smart gruop "MATCH"
This commit is contained in:
parent
3d137fde4d
commit
36c4b6f0d1
@ -118,12 +118,17 @@ function main(config) {
|
|||||||
|
|
||||||
// 处理字符串格式的规则
|
// 处理字符串格式的规则
|
||||||
const parts = rule.split(',').map(part => part.trim())
|
const parts = rule.split(',').map(part => part.trim())
|
||||||
if (parts.length >= 3) {
|
if (parts.length >= 2) {
|
||||||
// 找到代理组名称的位置(通常是第3个参数,但需要排除规则参数)
|
// 找到代理组名称的位置
|
||||||
let targetIndex = -1
|
let targetIndex = -1
|
||||||
let targetValue = ''
|
let targetValue = ''
|
||||||
|
|
||||||
// 从第3个参数开始查找(索引2),找到第一个不是规则参数的值
|
// 对于 MATCH 规则,目标在第2个位置(索引1)
|
||||||
|
if (parts[0] === 'MATCH' && parts.length === 2) {
|
||||||
|
targetIndex = 1
|
||||||
|
targetValue = parts[1]
|
||||||
|
} else if (parts.length >= 3) {
|
||||||
|
// 对于其他规则,从第3个参数开始查找(索引2),找到第一个不是规则参数的值
|
||||||
for (let i = 2; i < parts.length; i++) {
|
for (let i = 2; i < parts.length; i++) {
|
||||||
const part = parts[i]
|
const part = parts[i]
|
||||||
if (!ruleParams.has(part)) {
|
if (!ruleParams.has(part)) {
|
||||||
@ -132,6 +137,7 @@ function main(config) {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (targetIndex !== -1 && targetValue) {
|
if (targetIndex !== -1 && targetValue) {
|
||||||
// 检查是否应该替换这个目标
|
// 检查是否应该替换这个目标
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user