CClash 下载中心下载入口

配置笔记

Clash 服务商改节点名后怎样维护筛选表达式

Clash 服务商改节点名后怎样维护筛选表达式。了解适用条件、操作步骤与常见问题的排查方法。

更新于 2026/10/4 · Clash 编辑组

服务商刷新订阅或代理集合后,节点显示名常从地区简称改成带套餐、编号或英文连写的新字符串。策略组上的 filter、exclude-filter 按名称做关键词或正则匹配,名称一变,原来能进组的节点会整批落选,组也可能变空。维护筛选表达式,是在官方写明的作用范围内改匹配规则,而不是去改服务商怎么起名。

适用条件:筛选式到底作用在哪类引入

filter 用来留下满足关键词或正则表达式的节点,多个正则可以用反引号区分。官方写明:它仅作用于引入代理集合以及引入所有出站代理。exclude-filter 语法同类,用于排除匹配项。exclude-type 不支持正则,只用竖线分割类型名,根据节点类型排除,且仅排除引入出站代理,类型名无视大小写。

因此,需要改筛选式的典型场景是:节点主要来自 use 挂上的代理集合,或组上开了 include-all、include-all-proxies、include-all-providers。若节点只出现在 proxies 手工列表里,筛选字段不会按新名字重排这些项;把别的策略组写进 proxies 时,筛选同样不是用来改组名的。include-all-providers 会使引入代理集合失效,来源集合一变,旧表达式即使一字未改,命中结果也会变。

include-all 与 include-all-proxies 引入时按名称排序,且引入不包含策略组。服务商改的是节点名,排序会跟着新名称走,表达式必须按新字符串编写,不能按改名前的列表顺序去猜。判断依据:先列出该组实际引入路径(proxies、use、三类 include 开关),再决定是改正则、改排除,还是先改引入方式。

对照新名称改写表达式的步骤

第一步,从当前代理集合取出改名后的完整显示名,标出仍表示同一批线路的词根,以及已经消失的旧地区词、旧编号。第二步,重写 filter。资料示例用可忽略大小写的分组匹配港、hk、hongkong、hong kong 等写法;若新名称改成连写、加前缀或插入套餐词,要把仍要留下的新旧字样放进同一表达式,避免只认已删除的简称。第三步,把明确不要的地区或套餐词写入 exclude-filter,同样可用反引号分隔多条正则。第四步,排除依据若是协议类型而不是名字,条件应放到 exclude-type,用竖线连接类型名,不要把类型词塞进名称正则。第五步,一次只改一类条件:先让 filter 能命中新名,再叠加排除,最后才动类型排除,便于判断是哪一层把节点吃掉。第六步,策略组 name 含特殊符号时用引号包裹,以免解析时把组名和正则里的竖线、括号搅在一起。

提交前的判断依据:任取若干条新显示名,核对该留的留下、该丢的丢掉;并确认没有把 exclude-type 误当成正则字段。筛选式只匹配或排除名称与类型标签,不能改写节点内部协议。

组空、默认节点与失败时下一步

筛选过严时组会空。empty-fallback 在组为空时回退到指定 proxy,默认是 COMPATIBLE;这里不支持填写代理组,只支持填写 proxy 名称。把另一个策略组名填进去,不属于该字段的合法用法。default-selected 在该项为空或设置的节点名不存在时,默认选择组中第一个节点。服务商改名后,旧默认名往往已经不存在,打开组时会落到第一项,而不是记忆中的那一条。

若改完表达式后仍看不到预期节点:检查节点是否其实只写在 proxies 手工列表(筛选管不到作为策略组引入的名字);检查是否误开 include-all-providers 导致 use 失效;检查 exclude-filter 是否把新名称里的公共词误杀;检查 exclude-type 是否整类去掉目标协议。若列表里有节点但选不到指定名,按 default-selected 规则核对该名字是否仍存在。若组确已为空,只向 empty-fallback 填写真实存在的 proxy 名。仍无法对应时,回到代理组字段定义,确认 filter 的对象仍是代理集合与引入所有出站代理,而不是全局重命名工具。

资料来源:https://wiki.metacubex.one/config/proxy-groups/

← 返回全部文章