From be420f765b39b8f69797bc4271ee6ac9068bd0cb Mon Sep 17 00:00:00 2001 From: Jim Lee Date: Fri, 14 Jan 2022 00:26:57 +0800 Subject: [PATCH] Update Emoji rules (#439) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 向部分地域添加地域代码匹配规则。 - 使用 \b 定位符来全字匹配地域与接入点英文缩写,避免匹配错误。(emoji.toml 中使用 \\b 转义) - 前置高频地域匹配规则,并后置CN规则,以尽可能避免匹配错误。 - 同步 emoji.toml 与 emoji.txt 规则内容与顺序。 - 优化 CHN、IND、DEU 的匹配规则。 --- base/snippets/emoji.toml | 88 +++++++++++++++++---------------- base/snippets/emoji.txt | 103 +++++++++++++++++++++++++++------------ 2 files changed, 117 insertions(+), 74 deletions(-) diff --git a/base/snippets/emoji.toml b/base/snippets/emoji.toml index 68c270f..7b9d781 100644 --- a/base/snippets/emoji.toml +++ b/base/snippets/emoji.toml @@ -2,12 +2,36 @@ match = "(?i:Bandwidth|expire|流量|时间|应急|过期)" emoji = "🏳️‍🌈" +[[emoji]] +match = "(?i:\\bHK[G]?\\b|Hong.*?Kong|\\bHKT\\b|\\bHKBN\\b|\\bHGC\\b|\\bWTT\\b|\\bCMI\\b|[^-]港)" +emoji = "🇭🇰" + +[[emoji]] +match = "(?i:\\bTW[N]?\\b|Taiwan|新北|彰化|\\bCHT\\b|台湾|[^-]台|\\bHINET\\b)" +emoji = "🇨🇳" + +[[emoji]] +match = "(?i:\\bSG[P]?\\b|Singapore|新加坡|狮城|[^-]新)" +emoji = "🇸🇬" + +[[emoji]] +match = "(?i:\\bJP[N]?\\b|Japan|Tokyo|Osaka|Saitama|日本|东京|大阪|埼玉|[^-]日)" +emoji = "🇯🇵" + +[[emoji]] +match = "(?i:\\bK[O]?R\\b|Korea|首尔|韩|韓)" +emoji = "🇰🇷" + +[[emoji]] +match = "(?i:\\bUS[A]?\\b|America|United.*?States|美国|[^-]美|波特兰|达拉斯|俄勒冈|凤凰城|费利蒙|硅谷|拉斯维加斯|洛杉矶|圣何塞|圣克拉拉|西雅图|芝加哥)" +emoji = "🇺🇸" + [[emoji]] match = "(Ascension|阿森松)" emoji = "🇦🇨" [[emoji]] -match = "(UAE|Dubai|阿联酋|迪拜)" +match = "(?i:\\bUAE\\b|Dubai|阿联酋|迪拜)" emoji = "🇦🇪" [[emoji]] @@ -23,7 +47,7 @@ match = "(Austria|Vienna|奥地利|维也纳)" emoji = "🇦🇹" [[emoji]] -match = "(Australia|Sydney|澳大利亚|澳洲|悉尼)" +match = "(?i:\\bAU[S]?\\b|Australia|Sydney|澳大利亚|澳洲|悉尼)" emoji = "🇦🇺" [[emoji]] @@ -47,7 +71,7 @@ match = "(Brazil|Paulo|巴西|圣保罗)" emoji = "🇧🇷" [[emoji]] -match = "(?i:CA|Canada|Toronto|Montreal|Vancouver|加拿大|蒙特利尔|温哥华|楓葉|枫叶)" +match = "(?i:\\bCA[N]?\\b|Canada|Toronto|Montreal|Vancouver|加拿大|蒙特利尔|温哥华|楓葉|枫叶)" emoji = "🇨🇦" [[emoji]] @@ -58,10 +82,6 @@ emoji = "🇨🇭" match = "(智利|Chile)" emoji = "🇨🇱" -[[emoji]] -match = "(?i:CN|China|回国|中国|江苏|北京|上海|广州|深圳|杭州|常州|徐州|青岛|宁波|镇江|成都|back)" -emoji = "🇨🇳" - [[emoji]] match = "(Colombia|哥伦比亚)" emoji = "🇨🇴" @@ -79,11 +99,11 @@ match = "(Czech|捷克)" emoji = "🇨🇿" [[emoji]] -match = "(?i:DE|Germany|法兰克福|德)" +match = "(?i:\\bDE[U]?\\b|Germany|法兰克福|德(国|意志)|中德|^德$)" emoji = "🇩🇪" [[emoji]] -match = "(Denmark|丹麦)" +match = "(?i:\\bD[N]?K\\b|Denmark|丹麦)" emoji = "🇩🇰" [[emoji]] @@ -95,7 +115,7 @@ match = "(埃及|Egypt)" emoji = "🇪🇬" [[emoji]] -match = "(Spain|西班牙)" +match = "(?i:\\bES[P]?\\b|Spain|西班牙)" emoji = "🇪🇸" [[emoji]] @@ -107,11 +127,11 @@ match = "(Finland|Helsinki|芬兰|赫尔辛基)" emoji = "🇫🇮" [[emoji]] -match = "(France|Paris|法国|巴黎)" +match = "(?i:\\bFR[A]?\\b|France|Paris|法国|巴黎)" emoji = "🇫🇷" [[emoji]] -match = "(?i:UK|England|United.*?Kingdom|London|英国|[^-]英|伦敦)" +match = "(?i:\\bUK\\b|\\bGB[R]?\\b|England|United.*?Kingdom|London|英国|[^-]英|伦敦)" emoji = "🇬🇧" [[emoji]] @@ -122,10 +142,6 @@ emoji = "🇬🇷" match = "(格鲁吉亚|Georgia)" emoji = "🇬🇪" -[[emoji]] -match = "(?i:HK|Hong.*?Kong|HKT|HKBN|HGC|WTT|CMI|[^-]港)" -emoji = "🇭🇰" - [[emoji]] match = "(克罗地亚|Croatia)" emoji = "🇭🇷" @@ -151,7 +167,7 @@ match = "(马恩岛|Mann)" emoji = "🇮🇲" [[emoji]] -match = "(India|Mumbai|印度|孟买)" +match = "(?i:\\bIN[D]?\\b|India|Mumbai|印度|孟买|加尔各答|贾坎德|泰米尔纳德)" emoji = "🇮🇳" [[emoji]] @@ -159,7 +175,7 @@ match = "(伊朗|Iran)" emoji = "🇮🇷" [[emoji]] -match = "(Iceland|冰岛)" +match = "(?i:\\bIS[L]?\\b|Iceland|冰岛)" emoji = "🇮🇸" [[emoji]] @@ -170,10 +186,6 @@ emoji = "🇮🇹" match = "(约旦|Jordan)" emoji = "🇯🇴" -[[emoji]] -match = "(?i:JP|Japan|Tokyo|Osaka|Saitama|日本|东京|大阪|埼玉|[^-]日)" -emoji = "🇯🇵" - [[emoji]] match = "(肯尼亚|Kenya)" emoji = "🇰🇪" @@ -191,10 +203,6 @@ emoji = "🇰🇭" match = "(North.*?Korea|朝鲜)" emoji = "🇰🇵" -[[emoji]] -match = "(?i:KR|Korea|KOR|首尔|韩|韓)" -emoji = "🇰🇷" - [[emoji]] match = "(哈萨克斯坦|Kazakhstan)" emoji = "🇰🇿" @@ -224,7 +232,7 @@ match = "(蒙古|Монголулс|Mongolia)" emoji = "🇲🇳" [[emoji]] -match = "(Macao|澳门|CTM)" +match = "(Macao|澳门|\\bCTM\\b)" emoji = "🇲🇴" [[emoji]] @@ -240,13 +248,17 @@ match = "(尼日利亚|Nigeria)" emoji = "🇳🇬" [[emoji]] -match = "(Netherlands|荷兰|阿姆斯特丹)" +match = "(?i:\\bNL[D]?\\b|Netherlands|荷兰|阿姆斯特丹)" emoji = "🇳🇱" [[emoji]] match = "(挪威|Norway)" emoji = "🇳🇴" +[[emoji]] +match = "(新西兰|纽西兰|New Zealand)" +emoji = "🇳🇿" + [[emoji]] match = "(Philippines|菲律宾)" emoji = "🇵🇭" @@ -256,7 +268,7 @@ match = "(Pakistan|巴基斯坦)" emoji = "🇵🇰" [[emoji]] -match = "(Poland|波兰)" +match = "(?i:\\bP[O]?L\\b|Poland|波兰)" emoji = "🇵🇱" [[emoji]] @@ -280,7 +292,7 @@ match = "(塞尔维亚|Serbia)" emoji = "🇷🇸" [[emoji]] -match = "(?i:RU|Russia|Moscow|Petersburg|Siberia|伯力|莫斯科|圣彼得堡|西伯利亚|新西伯利亚|哈巴罗夫斯克|俄罗斯|[^-]俄)" +match = "(?i:\\bRU[S]?\\b|Russia|Moscow|Petersburg|Siberia|伯力|莫斯科|圣彼得堡|西伯利亚|新西伯利亚|哈巴罗夫斯克|俄罗斯|[^-]俄)" emoji = "🇷🇺" [[emoji]] @@ -291,10 +303,6 @@ emoji = "🇸🇦" match = "(Sweden|瑞典)" emoji = "🇸🇪" -[[emoji]] -match = "(?i:SG|Singapore|新加坡|狮城|[^-]新)" -emoji = "🇸🇬" - [[emoji]] match = "(斯洛文尼亚|Slovenia)" emoji = "🇸🇮" @@ -315,14 +323,6 @@ emoji = "🇹🇳" match = "(Turkey|土耳其|伊斯坦布尔)" emoji = "🇹🇷" -[[emoji]] -match = "(?i:TW|Taiwan|新北|彰化|CHT|台湾|[^-]台|HINET)" -emoji = "🇨🇳" - -[[emoji]] -match = "(?i:US|America|United.*?States|美国|[^-]美|波特兰|达拉斯|俄勒冈|凤凰城|费利蒙|硅谷|拉斯维加斯|洛杉矶|圣何塞|圣克拉拉|西雅图|芝加哥)" -emoji = "🇺🇸" - [[emoji]] match = "(乌拉圭|Uruguay)" emoji = "🇺🇾" @@ -334,3 +334,7 @@ emoji = "🇻🇳" [[emoji]] match = "(Africa|南非)" emoji = "🇿🇦" + +[[emoji]] +match = "(?i:\\bC[H]?N\\b|China|回国|中国[^-]|江苏[^-]|北京[^-]|上海[^-]|广州[^-]|深圳[^-]|杭州[^-]|常州[^-]|徐州[^-]|青岛[^-]|宁波[^-]|镇江[^-]|成都[^-]|back)" +emoji = "🇨🇳" \ No newline at end of file diff --git a/base/snippets/emoji.txt b/base/snippets/emoji.txt index 435f5fd..f0071fa 100644 --- a/base/snippets/emoji.txt +++ b/base/snippets/emoji.txt @@ -1,46 +1,85 @@ (?i:Bandwidth|expire|流量|时间|应急|过期),🏳️‍🌈 +(?i:\bHK[G]?\b|Hong.*?Kong|\bHKT\b|\bHKBN\b|\bHGC\b|\bWTT\b|\bCMI\b|[^-]港),🇭🇰 +(?i:\bTW[N]?\b|Taiwan|新北|彰化|\bCHT\b|台湾|[^-]台|\bHINET\b),🇨🇳 +(?i:\bSG[P]?\b|Singapore|新加坡|狮城|[^-]新),🇸🇬 +(?i:\bJP[N]?\b|Japan|Tokyo|Osaka|Saitama|日本|东京|大阪|埼玉|[^-]日),🇯🇵 +(?i:\bK[O]?R\b|Korea|首尔|韩|韓),🇰🇷 +(?i:\bUS[A]?\b|America|United.*?States|美国|[^-]美|波特兰|达拉斯|俄勒冈|凤凰城|费利蒙|硅谷|拉斯维加斯|洛杉矶|圣何塞|圣克拉拉|西雅图|芝加哥),🇺🇸 (Ascension|阿森松),🇦🇨 +(?i:\bUAE\b|Dubai|阿联酋|迪拜),🇦🇪 +(阿尔巴尼亚|Albania),🇦🇱 (Argentina|阿根廷),🇦🇷 (Austria|Vienna|奥地利|维也纳),🇦🇹 -(Australia|Sydney|澳大利亚|澳洲|悉尼),🇦🇺 +(?i:\bAU[S]?\b|Australia|Sydney|澳大利亚|澳洲|悉尼),🇦🇺 +(阿塞拜疆|Azerbaijan),🇦🇿 +(波黑共和国|波士尼亚与赫塞哥维纳|Bosnia|Herzegovina),🇧🇦 (Belgium|比利时),🇧🇪 +(保加利亚|Bulgaria),🇧🇬 (Brazil|Paulo|巴西|圣保罗),🇧🇷 -(?i:CA|Canada|Toronto|Montreal|Vancouver|加拿大|蒙特利尔|温哥华|楓葉|枫叶),🇨🇦 +(?i:\bCA[N]?\b|Canada|Toronto|Montreal|Vancouver|加拿大|蒙特利尔|温哥华|楓葉|枫叶),🇨🇦 (Switzerland|Zurich|瑞士|苏黎世),🇨🇭 -(Germany|法兰克福|德),🇩🇪 -(Denmark|丹麦),🇩🇰 -(Spain|西班牙),🇪🇸 +(智利|Chile),🇨🇱 +(Colombia|哥伦比亚),🇨🇴 +(Costa Rica|哥斯达黎加),🇨🇷 +(塞浦路斯|Cyprus),🇨🇾 +(Czech|捷克),🇨🇿 +(?i:\bDE[U]?\b|Germany|法兰克福|德(国|意志)|中德|^德$),🇩🇪 +(?i:\bD[N]?K\b|Denmark|丹麦),🇩🇰 +(爱沙尼亚|Estonia),🇪🇪 +(埃及|Egypt),🇪🇬 +(?i:\bES[P]?\b|Spain|西班牙),🇪🇸 (Europe|欧洲),🇪🇺 (Finland|Helsinki|芬兰|赫尔辛基),🇫🇮 -(France|Paris|法国|巴黎),🇫🇷 +(?i:\bFR[A]?\b|France|Paris|法国|巴黎),🇫🇷 +(?i:\bUK\b|\bGB[R]?\b|England|United.*?Kingdom|London|英国|[^-]英|伦敦),🇬🇧 +(希腊|Greece),🇬🇷 +(格鲁吉亚|Georgia),🇪 +(克罗地亚|Croatia),🇭🇷 +(Hungary|匈牙利),🇭🇺 (Indonesia|Jakarta|印尼|印度尼西亚|雅加达),🇮🇩 (Ireland|Dublin|爱尔兰|都柏林),🇮🇪 -(India|Mumbai|印度|孟买),🇮🇳 -(Italy|Milan|意大利|米兰),🇮🇹 -(?i:JP|Japan|Tokyo|Osaka|Saitama|日本|东京|大阪|埼玉|[^-]日),🇯🇵 -(North.*?Korea|朝鲜),🇰🇵 -(?i:KR|Korea|KOR|首尔|韩|韓),🇰🇷 -(Macao|澳门|CTM),🇲🇴 -(Malaysia|马来西亚),🇲🇾 -(Netherlands|荷兰|阿姆斯特丹),🇳🇱 -(Philippines|菲律宾),🇵🇭 -(Romania|罗马尼亚),🇷🇴 -(Arabia|沙特),🇸🇦 -(Dubai|迪拜),🇦🇪 -(Sweden|瑞典),🇸🇪 -(Thailand|泰国|曼谷),🇹🇭 -(Turkey|土耳其|伊斯坦布尔),🇹🇷 -(IMAN|马恩岛),🇮🇲 (Israel|以色列),🇮🇱 -(Norway|挪威),🇳🇴 -瑞典,🇸🇪 -(新西兰|纽西兰),🇳🇿 +(马恩岛|Mann),🇮🇲 +(?i:\bIN[D]?\b|India|Mumbai|印度|孟买|加尔各答|贾坎德|泰米尔纳德),🇮🇳 +(伊朗|Iran),🇮🇷 +(?i:\bIS[L]?\b|Iceland|冰岛),🇮🇸 +(Italy|Milan|意大利|米兰),🇮🇹 +(约旦|Jordan),🇯🇴 +(肯尼亚|Kenya),🇰🇪 +(吉尔吉斯斯坦|Kyrgyzstan),🇰🇬 +(柬埔寨|Cambodia),🇰🇭 +(North.*?Korea|朝鲜),🇰🇵 +(哈萨克斯坦|Kazakhstan),🇰🇿 +(立陶宛|Lietuvos),🇱🇹 +(卢森堡|Luxemburg|Luxembourg),🇱🇺 +(拉脱维亚|Latvia),🇱🇻 +(Moldova|摩尔多瓦),🇲🇩 +(北马其顿|Macedonia),🇲🇰 +(蒙古|Монголулс|Mongolia),🇲🇳 +(Macao|澳门|\bCTM\b),🇲🇴 +(墨西哥|Mexico),🇲🇽 +(Malaysia|马来西亚),🇲🇾 +(尼日利亚|Nigeria),🇳🇬 +(?i:\bNL[D]?\b|Netherlands|荷兰|阿姆斯特丹),🇳🇱 +(挪威|Norway),🇳🇴 +(新西兰|纽西兰|New Zealand),🇳🇿 +(Philippines|菲律宾),🇵🇭 +(Pakistan|巴基斯坦),🇵🇰 +(?i:\bP[O]?L\b|Poland|波兰),🇵🇱 +(巴拿马|Panama),🇵🇦 +(秘鲁|Peru),🇵🇪 +(葡萄牙|Portugal),🇵🇹 +(Romania|罗马尼亚),🇷🇴 +(塞尔维亚|Serbia),🇷🇸 +(?i:\bRU[S]?\b|Russia|Moscow|Petersburg|Siberia|伯力|莫斯科|圣彼得堡|西伯利亚|新西伯利亚|哈巴罗夫斯克|俄罗斯|[^-]俄),🇷🇺 +(Arabia|沙特),🇸🇦 +(Sweden|瑞典),🇸🇪 +(斯洛文尼亚|Slovenia),🇸🇮 +(斯洛伐克|Slovensko),🇸🇰 +(Thailand|泰国|曼谷),🇹🇭 +(突尼斯|Tunisia),🇹🇳 +(Turkey|土耳其|伊斯坦布尔),🇹🇷 +(乌拉圭|Uruguay),🇺🇾 (Vietnam|越南),🇻🇳 (Africa|南非),🇿🇦 -(?i:UK|England|United.*?Kingdom|London|英国|[^-]英|伦敦),🇬🇧 -(?i:SG|Singapore|新加坡|狮城|[^-]新),🇸🇬 -(?i:RU|Russia|Moscow|Petersburg|Siberia|伯力|莫斯科|圣彼得堡|西伯利亚|新西伯利亚|哈巴罗夫斯克|俄罗斯|[^-]俄),🇷🇺 -(?i:US|America|United.*?States|美国|[^-]美|波特兰|达拉斯|俄勒冈|凤凰城|费利蒙|硅谷|拉斯维加斯|洛杉矶|圣何塞|圣克拉拉|西雅图|芝加哥),🇺🇸 -(?i:TW|Taiwan|新北|彰化|CHT|台湾|[^-]台|HINET),🇨🇳 -(?i:HK|Hong.*?Kong|HKT|HKBN|HGC|WTT|CMI|[^-]港),🇭🇰 -(?i:CN|China|回国|中国|江苏|北京|上海|广州|深圳|杭州|常州|徐州|青岛|宁波|镇江|成都|back),🇨🇳 +(?i:\bC[H]?N\b|China|回国|中国[^-]|江苏[^-]|北京[^-]|上海[^-]|广州[^-]|深圳[^-]|杭州[^-]|常州[^-]|徐州[^-]|青岛[^-]|宁波[^-]|镇江[^-]|成都[^-]|back),🇨🇳