Files
script/substore/README.md
T
orion 7a62f839f1 refactor(substore): 将通用工具函数迁移至公共库
- 从各个重命名脚本中移除重复的工具函数实现
- 将 multiplierOf、multiplierValueOf、stripSubscriptionSuffix 等函数统一到 common.js
- 使用 utils.multiplierOf、utils.multiplierValueOf 替代本地实现
- 引入 utils.createSequenceCounter 替代手动计数逻辑
- 更新版本号从 20260608-1 到 20260702-1
- 移除重复的正则表达式匹配逻辑
- 标准化序列计数器实现方式
- 优化 yinyun-rename.js 中的信息节点过滤逻辑
2026-07-02 23:40:05 +08:00

8.6 KiB
Raw Blame History

Sub-Store 节点命名脚本

这个目录放的是一组 Sub-Store 节点处理脚本。推荐把“单订阅专属规则”和“整合订阅全局规则”分开使用,避免一个机场的关键词误伤其他机场。

common.js 是公共工具库,各处理脚本会按下面的 raw 地址自动加载:

https://git.orionc.me/orion/script/raw/branch/main/substore/common.js?v=20260702-1

推荐使用顺序

单订阅脚本先跑,整合订阅最后跑:

  1. sntp-rename.js:放在 SNTP 单订阅里,注入线路标签。
  2. yuetong-rename.js:只清理 YueTong 的品牌前缀和装饰符号。
  3. peiqian-rename.js:只清理 PeiQian 的推荐/用途描述。
  4. alphaair-rename.js:只处理 Alpha Air 的供应商压缩、倍率排序和连续编号。
  5. iriscloud-rename.js:只处理 Iris Cloud 的入口/落地地区冲突和供应商特征。
  6. liangxin-rename.js:只清理 LiangXin 的高速、BGP、CMCU 等线路描述。
  7. yinyun-rename.js:只处理 YinYun 的中文地区名,并按地区连续编号。
  8. rename.js:整合订阅最终重命名,负责国家短码、国旗归位、订阅后缀和去重。

如果某个订阅没有对应的专属脚本,直接进入最后的 rename.js 即可。

脚本职责

脚本 建议配置位置 作用
sntp-rename.js SNTP 单订阅 注入 [三网][CFW][直连][cn2] 等线路标签
yuetong-rename.js YueTong 单订阅 去掉 悦·💎,把 AI解锁 压成 AI
peiqian-rename.js PeiQian 单订阅 压短 电信联通推荐移动联通推荐高速专线hy2、倍率和用途描述
alphaair-rename.js Alpha Air 单订阅 去掉提供者/三网/家宽文案,普通节点保留地区,高级非倍率节点保留供应商,倍率节点保留倍率并连续编号
iriscloud-rename.js Iris Cloud 单订阅 SGTYO/JP、其余香港的专属规则重判落地地区,去掉入口线路和供应商文案并保留倍率
liangxin-rename.js LiangXin 单订阅 去掉 高速BGPCMCUCMCUCT 等线路描述
yinyun-rename.js YinYun 单订阅 中文国家/地区名转短码,忽略 优选、原始编号和 (T)/(R),按地区连续编号
rename.js 整合订阅 统一国家/城市短码,移动国旗到首部,追加 - _subName,处理重名编号
common.js 公共依赖 被各处理脚本远程加载,不需要单独配置为处理器

SNTP 规则

sntp-rename.js 建议挂在 SNTP 的单条订阅里使用。它不依赖 _subName,方便分享和复用;但像 BGPDCT 这类关键词比较短,不建议直接放到整合订阅里全局运行。

命中关键词 注入标签
GTM 0.5x [三网]
GTM [三网]
CT [CFW]
D [直连]
S1 [广移]
S2 [广电]
S3 [广移]
S4 [广联]
BGP [cn2]
Anytls [直连]

示例:

🇭🇰 HK-CT-1 0.2x - SNTP
=> 🇭🇰 HK 01 0.2x [CFW]-SNTP

🇯🇵 JP-D-1-0.2x - SNTP
=> 🇯🇵 JP 01 0.2x [直连]-SNTP

YueTong 规则

yuetong-rename.js 建议挂在 YueTong 单条订阅里使用,不依赖 _subName

🇯🇵 悦·日本专属2💎
=> 🇯🇵日本1

再经过 rename.js 后:

🇯🇵日本1
=> 🇯🇵 JP 01 - YueTong

PeiQian 规则

peiqian-rename.js 建议挂在 PeiQian 单条订阅里使用,不依赖 _subName

🇯🇵 日本东京03-0.1倍 | 电信联通推荐 - PeiQian
=> 🇯🇵 日本东京03 0.1x - PeiQian

🇺🇸 美国01 | 合适下载使用-0.01倍 - PeiQian
=> 🇺🇸 美国01 0.01x - PeiQian

🇼🇸 台湾 | 避免晚高峰使用 - PeiQian
=> 🇼🇸 台湾 - PeiQian

再经过 rename.js 后会变成:

🇯🇵 JP TYO 03 0.1X - PeiQian
🇺🇸 US 01 0.01X - PeiQian
🇼🇸 TW 01 - PeiQian

Alpha Air 规则

alphaair-rename.js 建议挂在 Alpha Air 单条订阅里使用。它会把 Alpha Air 的提供者和线路文案压掉;普通节点只保留地区,高级非倍率节点保留供应商标签,倍率家宽节点只保留倍率;之后再交给全局 rename.js 追加订阅后缀。

🇺🇸 4X|美国夏威夷家宽|三网1
=> 🇺🇸 US HNL 4X 01
=> 🇺🇸 US HNL 01 4X - Alpha Air

3X 🇨🇳 台湾家宽Hinet|COP
=> 🇹🇼 TW 3X 01
=> 🇹🇼 TW 01 3X - Alpha Air

🇭🇰 SkyStroll|毕业
=> 🇭🇰 HK SkyStroll 01

香港HKT
=> 🇭🇰 HK 01

Iris Cloud 规则

iriscloud-rename.js 建议挂在 Iris Cloud 单条订阅里使用。Iris Cloud 的节点名里 HK 可能只是入口或线路名,脚本会按落地关键词重新判断地区,压掉供应商/入口线路文案,并保留 0.5x2.69x 这类倍率;无法识别为 Iris Cloud 节点的名称会原样放行,不参与排序和编号。

  • 名称包含 SG:新加坡节点。
  • 名称包含 TYOJP:日本节点。
  • 明确包含 HKiCable:香港节点。
🇭🇰 SZ 03 HK-DataCamp-SG - Iris Cloud
=> 🇸🇬 SG 01

🇭🇰 HZ 01 HK-DMIT-TYO - Iris Cloud
=> 🇯🇵 JP TYO 01

🏴☠️ [Edge] iCable - Iris Cloud
=> 🇭🇰 HK 01

🇭🇰 HK DMIT | 2.69x | HZBGP Aliyun
=> 🇭🇰 HK 01 2.69X

LiangXin 规则

liangxin-rename.js 建议挂在 LiangXin 单条订阅里使用。它会删除内嵌的线路描述,以及 | 分隔出来的纯线路标签:

🇭🇰香港高速01|BGP|CMCU
=> 🇭🇰 香港01

再经过 rename.js 后:

🇭🇰 香港01
=> 🇭🇰 HK 01 - LiangXin

YinYun 规则

yinyun-rename.js 建议挂在 YinYun 单条订阅里使用。YinYun 的节点名主要由中文地区名、优选/数字编号、(T)/(R) 线路标记和可选 ᴮᴬᴷ 备份标签组成;脚本会忽略这些原始线路细节,按地区出现顺序重新连续编号,过滤官网/TG 信息节点,最后再交给全局 rename.js 追加订阅后缀。

香港 优选(T)
=> 🇭🇰 HK 01
=> 🇭🇰 HK 01 - YinYun

香港 优选(R)
=> 🇭🇰 HK 02
=> 🇭🇰 HK 02 - YinYun

哈萨克斯坦 (T)
=> 🇰🇿 KZ 01
=> 🇰🇿 KZ 01 - YinYun

魔法节点 (R)
=> MAGIC 01
=> MAGIC 01 - YinYun

泰国 (T) ᴮᴬᴷ
=> 🇹🇭 TH 01
=> 🇹🇭 TH 01 - YinYun

全局重命名

rename.js 适合放在整合订阅最后。它做的事情更通用:

全局规则只按节点名结构、地区词、线路词和通用格式匹配,不按机场名或 _subName 分支处理;以后修改某个订阅的 _subName 不应影响全局规则命中。

  • 国家/地区中文名、英文名转短码,例如 香港 -> HKJapan -> JP
  • 常见城市转短码,例如 Los Angeles -> LAXSan Jose -> SJCSeattle -> SEA东京 -> TYO
  • 国家/地区别名表覆盖常见英文、中文国家名;城市尽量使用三字 IATA/城市码,避免 LA 这类两字码被旗帜操作误识别为国家。
  • 支持国旗在中间的节点名,例如 Pro-🇭🇰 Sharon|守夜人 -> 🇭🇰 HK Pro-Sharon|守夜人
  • 支持保留连字符命名里的入口/落地特征,例如 HK-Go-05-HostHatch -> HK 05 GO-HostHatch
  • 将倍率移动到节点核心末尾、订阅后缀之前,例如 US 2X 02 - Example -> US 02 2X - Example
  • 清理 [DIP China-Hongkong][DIP]
  • 清理 IEPL 专线 3标准 1高级 1 这类冗余线路尾号。
  • 追加订阅后缀 - _subName
  • 对最终重名节点追加两位编号。

示例:

🇭🇰 Hong Kong 01 [DIP China-Hongkong] - Example
=> 🇭🇰 HK 01 [DIP] - Example

🇯🇵 日本高级 IEPL 专线 3 - Example
=> 🇯🇵 JP 01 高级 - Example

Pro-🇭🇰 Sharon|守夜人 - Example
=> 🇭🇰 HK Pro-Sharon|守夜人 - Example

🇭🇰 HK-Go-05-HostHatch - Example
=> 🇭🇰 HK 05 GO-HostHatch - Example

注意事项

  • sntp-rename.js 不带 _subName 判断,适合挂在 SNTP 单订阅里;如果放进整合订阅,可能会误伤其他带 BGPDCT 的节点。
  • yuetong-rename.jspeiqian-rename.jsliangxin-rename.jsyinyun-rename.js 也不带 _subName 判断,适合挂在对应单订阅里;如果放进整合订阅,需要确认规则不会误伤其他订阅。
  • rename.js 会剥离并重新追加 - _subName,重复运行不会叠加订阅后缀。
  • 如果新增订阅里出现很短、很泛的关键词,例如 DCTBGPS1,或像 Alpha Air 这种强绑定单机场的供应商压缩规则,优先拆成单订阅脚本,不建议放进全局 rename.js