Untitled
unknown
plain_text
a year ago
2.0 kB
10
Indexable
// 定义需要删除的关键词列表
const keywordsToRemove = [
'Lv3 ',
' [2.0]',
'🇭🇰'
];
// 定义需要添加的关键词映射
const keywordsToAdd = {
'香港|港': '🐬 ',
'台湾|台': '🐸 ',
'澳门': '🐹 ',
'美国': '🦅 '
};
// 定义批量替换的映射关系
const replaceMap = {
'傻逼': 'SB'
};
// 删除 name 字段中包含指定关键词的部分
const removeKeywords = (name, keywords) => {
keywords.forEach(keyword => {
name = name.replace(keyword, '');
});
return name;
};
// 在 name 字段前面添加指定关键词
const addKeywords = (name, keywordMap) => {
let prefixAdded = false;
for (const [keys, value] of Object.entries(keywordMap)) {
const keyList = keys.split('|');
for (const key of keyList) {
if (name.includes(key)) {
name = value + name;
prefixAdded = true;
break; // 确保只添加一个前缀
}
}
if (prefixAdded) break; // 确保只添加一个前缀
}
return name;
};
// 批量替换 name 字段中的文本
const replaceText = (name, replaceMap) => {
for (const [search, replacement] of Object.entries(replaceMap)) {
name = name.replace(new RegExp(search, 'g'), replacement);
}
return name;
};
// 处理 proxies 数组
if (Array.isArray(rawObj.proxies)) {
rawObj.proxies = rawObj.proxies.map(proxy => {
proxy.name = removeKeywords(proxy.name, keywordsToRemove);
proxy.name = addKeywords(proxy.name, keywordsToAdd);
proxy.name = replaceText(proxy.name, replaceMap);
return proxy;
});
}
Editor is loading...
Leave a Comment