feat(core): 添加节点名称 ISP 信息追加脚本

新增 `sntp-rename.js` 脚本,用于根据节点名称中的线路标识符自动追加对应的中文运营商简称后缀。

脚本逻辑为:保留原始节点名称,在末尾添加“ [中文简称]”。匹配优先级依次为:广东系列线路 (S1-S4)、江苏/浙江系列线路 (E1-E2)、动态解析线路 (GTM)、测试线路 (TEST) 以及 Anytls 直连线路。添加后缀前会检查是否已存在,避免重复。
This commit is contained in:
Orion
2026-04-09 09:14:59 +08:00
parent b8d57af622
commit 90a54edc0a

56
sntp-rename.js Normal file
View File

@@ -0,0 +1,56 @@
/**
* 节点名称追加 ISP 信息脚本
* 逻辑:保留原名,在末尾添加 " [中文简称]"
* 优先级先匹配具体的线路标识S1-S4, E1-E2最后匹配 GTM 或 TEST
*/
function operator(proxies) {
return proxies.map(p => {
let suffix = "";
const name = p.name;
// 1. 广东系列线路 (S1-S4)
// 使用正则匹配连字符或空格后的标识符,确保不会误触 (例如防止 US1 误匹配 S1)
if (/(?:^|[- ])S1\b/i.test(name) || /(?:^|[- ])S3\b/i.test(name)) {
suffix = "广移";
}
else if (/(?:^|[- ])S2\b/i.test(name)) {
suffix = "广电";
}
else if (/(?:^|[- ])S4\b/i.test(name)) {
suffix = "广联";
}
// 2. 江苏/浙江系列线路 (E1-E2)
else if (/(?:^|[- ])E1\b/i.test(name)) {
suffix = "苏移";
}
else if (/(?:^|[- ])E2\b/i.test(name)) {
suffix = "浙移";
}
// 3. 动态解析线路 (GTM)
else if (/GTM/i.test(name)) {
suffix = "三网";
}
// 4. 测试线路 (TEST)
else if (/TEST/i.test(name)) {
suffix = "测试";
}
// 5. Anytls 直连线路
else if (/Anytls/i.test(name)) {
suffix = "直连";
}
// 执行名称追加
if (suffix) {
// 检查是否已经存在该后缀,避免重复添加
if (!name.includes(`[${suffix}]`)) {
p.name = `${name} [${suffix}]`;
}
}
return p;
});
}