Skip to content

Commit fa3d735

Browse files
committed
优化 节点重命名及emoji正则
1 parent 753b88c commit fa3d735

14 files changed

+734
-910
lines changed

Subconverter-base/AIO-NoReject.ini

Lines changed: 41 additions & 44 deletions
Large diffs are not rendered by default.

Subconverter-base/AIO-NoReject.toml

Lines changed: 61 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,7 @@ loon_rule_base = "https://raw.githubusercontent.com/LM-Firefly/Rules/master/Subc
1313
sssub_rule_base = "https://raw.githubusercontent.com/LM-Firefly/Rules/master/Subconverter-base/all-base.tpl"
1414
singbox_rule_base = "https://raw.githubusercontent.com/LM-Firefly/Rules/master/Subconverter-base/all-base.tpl"
1515

16-
exclude_remarks = [
17-
"((到期)|(剩余流量)|(时间)|(官网)|(产品)|(先购买套餐)|(流量消耗)|(更新订阅)|(套餐到期)|(.*流量.*剩.*天)|(■等级警报■)|(\\(限速\\))|(\\[限速\\])|(\\[游戏\\])|(\\[游戏专用\\])|(\\[将下线\\])|(.*耗尽.*)|(近期下线)|(游戏专线)|(维护)|(测试节点)|(防失联地址)|(官方地址)|(官方网站)|(群组))",
18-
]
16+
# exclude_remarks = []
1917

2018

2119
[node_pref]
@@ -36,7 +34,7 @@ match = "((^CordCloud - )|(关注TG@txwl666)|(一元机场:ssrsub.de)|(机场推
3634
replace = ""
3735

3836
[[node_pref.rename_node]]
39-
match = "(标准)|(标准线路)|(线路)|(中转)|(直连)|(80端口)|(V\\d-)|((IEPL)|(IEPL专线)|(IPLC)|(IPLC专线))|(IPV6)|((海外\\|新疆专用))|((\u6d77\u5916\\|\u65b0\u7586\u4e13\u7528))"
37+
match = "(标准)|(标准线路)|(线路)|(中转)|(直连)|(80端口)|(V\\d-)|((IEPL)|(IEPL专线)|(IPLC)|(IPLC专线))|(IPV6)|((海外\\|新疆专用))|((\u6d77\u5916\\|\u65b0\u7586\u4e13\u7528)|(CLOUD))"
4038
replace = ""
4139

4240
[[node_pref.rename_node]]
@@ -69,75 +67,75 @@ replace = ""
6967

7068
[[node_pref.rename_node]]
7169
match = "^(.*)(?i:\\bHK[G]?\\d*\\b|Hong.*?Kong|\\bHKT\\d*\\b|\\bHKBN\\d*\\b|\\bHGC\\d*\\b|\\bWTT\\d*\\b|\\bCMI\\d*\\b|\\bHK\\d*\\b)([\u4e00-\u9fa5].*|\\d*)"
72-
replace = "香港 $2"
70+
replace = "🇭🇰 香港$2"
7371

7472
[[node_pref.rename_node]]
7573
match = "^((「|\u300c)(🇭🇰)(」|\u300d))(.*)"
76-
replace = "香港 $5"
74+
replace = "🇭🇰 香港$5"
7775

7876
[[node_pref.rename_node]]
79-
match = "^((?i:\\bUS[A]?\\d*\\b)|((「|\u300c)(🇺🇸)(」|\u300d)))(.*)"
80-
replace = "美国 $6"
77+
match = "^(🇺🇸\\s*)?((?i:\\bUS[A]?\\d*\\b)|((「|\\u300c)(🇺🇸)(」|\\u300d)))\\s*(.*)"
78+
replace = "🇺🇸 美国$7"
8179

8280
[[node_pref.rename_node]]
83-
match = "^((?i:\\bJP[N]?\\d*\\b)|((「|\u300c)(🇯🇵)(」|\u300d)))(.*)"
84-
replace = "日本 $6"
81+
match = "^(🇯🇵\\s*)?((?i:\\bJP[N]?\\d*\\b)|((「|\\u300c)(🇯🇵)(」|\\u300d)))\\s*(.*)"
82+
replace = "🇯🇵 日本$7"
8583

8684
[[node_pref.rename_node]]
87-
match = "^((?i:\\bTW[N]?\\d*\\b)|((「|\u300c)(🇹🇼)(」|\u300d)))(.*)"
88-
replace = "台湾 $6"
85+
match = "^(🇹🇼\\s*)?((?i:\\bTW[N]?\\d*\\b)|((「|\\u300c)(🇹🇼)(」|\\u300d)))\\s*(.*)"
86+
replace = "🇹🇼 台湾$7"
8987

9088
[[node_pref.rename_node]]
91-
match = "^((?i:\\bMO\\d*\\b)|((「|\u300c)(🇲🇴)(」|\u300d)))(.*)"
92-
replace = "澳门 $6"
89+
match = "^(🇲🇴\\s*)?((?i:\\bMO\\d*\\b)|((「|\\u300c)(🇲🇴)(」|\\u300d)))\\s*(.*)"
90+
replace = "🇲🇴 澳门$7"
9391

9492
[[node_pref.rename_node]]
95-
match = "^((?i:\\bSG[P]?\\d*\\b)|((「|\u300c)(🇸🇬)(」|\u300d)))(.*)"
96-
replace = "新加坡 $6"
93+
match = "^(🇸🇬\\s*)?((?i:\\bSG[P]?\\d*\\b)|((「|\\u300c)(🇸🇬)(」|\\u300d)))\\s*(.*)"
94+
replace = "🇸🇬 新加坡$7"
9795

9896
[[node_pref.rename_node]]
9997
match = "^(?i:\\bRU[S]?\\d*\\b)(.*)"
100-
replace = "俄罗斯 $2"
98+
replace = "俄罗斯$2"
10199

102100
[[node_pref.rename_node]]
103101
match = "^(\\bT[U]R\\b)(.*)"
104-
replace = "土耳其 $2"
102+
replace = "土耳其$2"
105103

106104
[[node_pref.rename_node]]
107-
match = "^((?i:\\bUK\\d*\\b|\\bGB[R]?\\d*\\b)|((「|\u300c)(🇬🇧)(」|\u300d)))(.*)"
108-
replace = "英国 $6"
105+
match = "^(🇬🇧\\s*)?((?i:\\bUK\\d*\\b|\\bGB[R]?\\d*\\b)|((「|\\u300c)(🇬🇧)(」|\\u300d)))\\s*(.*)"
106+
replace = "🇬🇧 英国$7"
109107

110108
[[node_pref.rename_node]]
111-
match = "^((?i:(?<!North\\s)(\\bK[O]?R\\d*\\b))|((「|\u300c)(🇰🇷)(」|\u300d)))(.*)"
112-
replace = "韩国 $7"
109+
match = "^(🇰🇷\\s*)?((?i:(\\b(?<!North\\s)\\bK(orea|OR|R)\\s?\\d*))|((「|\\u300c)(🇰🇷)(」|\\u300d)))\\s*(.*)"
110+
replace = "🇰🇷 韩国$8"
113111

114112
[[node_pref.rename_node]]
115-
match = "^((?i:\\bFR[A]?\\d*\\b)|((「|\u300c)(🇫🇷)(」|\u300d)))(.*)"
116-
replace = "法国 $6"
113+
match = "^(🇫🇷\\s*)?((?i:\\bFR[A]?\\d*\\b)|((「|\\u300c)(🇫🇷)(」|\\u300d)))\\s*(.*)"
114+
replace = "🇫🇷 法国$7"
117115

118116
[[node_pref.rename_node]]
119-
match = "^((?i:\\bCA[N]?\\d*\\b)|((「|\u300c)(🇨🇦)(」|\u300d)))(.*)"
120-
replace = "加拿大 $6"
117+
match = "^(🇨🇦\\s*)?((?i:\\bCA[N]?\\d*\\b)|((「|\\u300c)(🇨🇦)(」|\\u300d)))\\s*(.*)"
118+
replace = "🇨🇦 加拿大$7"
121119

122120
[[node_pref.rename_node]]
123-
match = "^((?i:\\bAU[S]?\\d*\\b)|((「|\u300c)(🇦🇺)(」|\u300d)))(.*)"
124-
replace = "澳大利亚 $6"
121+
match = "^(🇦🇺\\s*)?((?i:\\bAU[S]?\\d*\\b)|((「|\\u300c)(🇦🇺)(」|\\u300d)))\\s*(.*)"
122+
replace = "🇦🇺 澳大利亚$7"
125123

126124
[[node_pref.rename_node]]
127-
match = "^((?i:\\bC[H]?N\\b)|((「|\u300c)(🇨🇳)(」|\u300d)))(.*)"
128-
replace = "中国 $6"
125+
match = "^(🇨🇳\\s*)?((?i:\\bC[H]?N\\b)|((「|\\u300c)(🇨🇳)(」|\\u300d)))\\s*(.*)"
126+
replace = "🇨🇳 中国$7"
129127

130128
[[node_pref.rename_node]]
131129
match = "^(\\bRO\\d*\\b)(.*)"
132-
replace = "罗马尼亚 $2"
130+
replace = "罗马尼亚$2"
133131

134132
[[node_pref.rename_node]]
135133
match = "^(\\bBR\\d*\\b)(.*)"
136-
replace = "巴西 $2"
134+
replace = "巴西$2"
137135

138136
[[node_pref.rename_node]]
139-
match = "^((?i:\\bES[P]?\\d*\\b)|((「|\u300c)(🇪🇸)(」|\u300d)))(.*)"
140-
replace = "西班牙 $6"
137+
match = "^(🇪🇸\\s*)?((?i:\\bES[P]?\\d*\\b)|((「|\\u300c)(🇪🇸)(」|\\u300d)))\\s*(.*)"
138+
replace = "🇪🇸 西班牙$7"
141139

142140
[[node_pref.rename_node]]
143141
match = "移动"
@@ -172,49 +170,29 @@ match = "(\\w+|[\u4e00-\u9fa5]+)\\s\\1"
172170
replace = "$1 "
173171

174172
[[node_pref.rename_node]]
175-
match = "\\[CM\\]|\\[CU\\]|\\[BT\\/PT专用\\]|\\[荐\\]|\\[Beta\\]|\\[移动\\]|\\[联通\\]|\\[综合\\]|\\[备用\\]|\\[阿里云\\]|\\[测试\\]|\\[v6\\]|高速|100m限速|CDN加速|Game|PPCW|Sakura"
176-
replace = ""
177-
178-
# [[node_pref.rename_node]]
179-
# match = "(?!<=[\\]|\\)])$"
180-
# replace = "[x1]"
181-
182-
[[node_pref.rename_node]]
183-
match = "(x|X)(\\d*.?\\d*\\d)"
184-
replace = "[x$2]"
185-
186-
[[node_pref.rename_node]]
187-
match = "(.*)(\\[)(倍率:)(.*\\d)(\\])"
188-
replace = "$1[x$4]"
173+
match = "((?:\\p{RI}{2})|[\\x{2600}-\\x{27BF}\\x{1F300}-\\x{1F5FF}\\x{1F600}-\\x{1F64F}\\x{1F680}-\\x{1F6FF}\\x{1F900}-\\x{1F9FF}\\x{1FA70}-\\x{1FAFF}])\\1+"
174+
replace = "$1"
189175

190176
[[node_pref.rename_node]]
191-
match = "(\\[x.*\\d\\])(.*)"
192-
replace = "$2$1"
193-
194-
[[node_pref.rename_node]]
195-
match = "(.*)( )(.*\\d)(倍率)"
196-
replace = "$1[x$3]"
177+
match = "\\[CM\\]|\\[CU\\]|\\[BT\\/PT专用\\]|\\[荐\\]|\\[Beta\\]|\\[移动\\]|\\[联通\\]|\\[综合\\]|\\[备用\\]|\\[阿里云\\]|\\[测试\\]|\\[v6\\]|高速|100m限速|CDN加速|Game|PPCW|Sakura"
178+
replace = ""
197179

198180
[[node_pref.rename_node]]
199-
match = "(.*)(\\|)(x.*\\d)(倍率)"
200-
replace = "$1[$3]"
181+
match = "(.*?)(?:\\[?倍率:?\\]?\\s*(\\d+(?:\\.\\d+)?)(?:\\s*倍(?:率)?)?|(?:x|X)(\\d+(?:\\.\\d+)?))(.*)"
182+
replace = "$1[x$2$3]$4"
201183

202184
[[node_pref.rename_node]]
203-
match = "(.*)( )(x.*\\d)"
204-
replace = "$1[$3]"
185+
match = "(.*)\\[x(\\d+(?:\\.\\d+)?)\\](.*)"
186+
replace = "$1$3[x$2]"
205187

206188
[[node_pref.rename_node]]
207189
match = "\\[\\]"
208190
replace = ""
209191

210-
[[node_pref.rename_node]]
211-
match = "\\(?((x|X)?(\\d+)(\\.?\\d+)?)((\\s?倍率?)|(x|X))\\)?"
212-
replace = "[x$1]"
213-
214192

215193
[emojis]
216194
add_emoji = true
217-
remove_old_emoji = true
195+
remove_old_emoji = false
218196

219197
[[emojis.emoji]]
220198
match = "(?i:(^☠️)|(Bandwidth)|(expire)|(流量)|(时间)|(应急)|(过期))"
@@ -252,6 +230,10 @@ emoji = "🇧🇭"
252230
match = "((^🇧🇹)|(\\bBT\\d*)|(BT_\\b)|(不丹)|(Bhutan))"
253231
emoji = "🇧🇹"
254232

233+
[[emojis.emoji]]
234+
match = "((^🇨🇫)|(中非共和国)|(Central African Republic))"
235+
emoji = "🇨🇫"
236+
255237
[[emojis.emoji]]
256238
match = "((^🇵🇦)|(\\bPA\\d*)|(PA_\\b)|(巴拿马)|(Panama))"
257239
emoji = "🇵🇦"
@@ -477,7 +459,7 @@ match = "((^🇵🇷)|(\\bPR\\d*)|(PR_\\b)|(Puerto.*?Rico)|(波多黎各))"
477459
emoji = "🇵🇷"
478460

479461
[[emojis.emoji]]
480-
match = "((^🇨🇭)|(\\bCH\\d*)|(CH_\\b)|(Switzerland)|(Zurich)|(瑞士)|(苏黎世))"
462+
match = "((^🇨🇭)|(\\bCH\\d*)|(CH_\\b)|(Switzerland)|(Zurich)|(瑞士)|(苏黎世)|(日内瓦))"
481463
emoji = "🇨🇭"
482464

483465
[[emojis.emoji]]
@@ -517,7 +499,7 @@ match = "((^🇹🇭)|(\\bTH[A])|(TH_\\b)|(Thailand)|(泰国)|(泰國)|(曼谷))
517499
emoji = "🇹🇭"
518500

519501
[[emojis.emoji]]
520-
match = "((^🇹🇷)|(\\bT[U]R)|(TR_\\b)|(Turkey)|(Türkiye)|(土耳其)|(伊斯坦布尔)|(土.*(?!▷|回|转)))"
502+
match = "((^🇹🇷)|(\\bT[U]R)|(TR_\\b)|(Turkey)|(Türkiye)|(伊斯坦布尔)|(土(耳其)?(?!▷|回|转)))"
521503
emoji = "🇹🇷"
522504

523505
[[emojis.emoji]]
@@ -541,15 +523,15 @@ match = "(?i:(^🇩🇰)|(\\bD[N]?K)|(DK_\\b)|(Denmark)|(丹麦))"
541523
emoji = "🇩🇰"
542524

543525
[[emojis.emoji]]
544-
match = "(?i:(^🇩🇪)|(\\bDE[U]?\\d*)|(DE_\\b)|(Germany)|(法兰克福)|(德(国|意志))|(中德)|(^德$)|(德.*(?!▷|回|转)))"
526+
match = "(?i:(^🇩🇪)|(\\bDE[U]?\\d*)|(DE_\\b)|(Germany)|(法兰克福)|(德(国|意志)?(?!▷|回|转))|(中德))"
545527
emoji = "🇩🇪"
546528

547529
[[emojis.emoji]]
548530
match = "(?i:(^🇪🇸)|(\\bES[P]?\\d*)|(ES_\\b)|(Spain)|(西班牙))"
549531
emoji = "🇪🇸"
550532

551533
[[emojis.emoji]]
552-
match = "(?i:(^🇫🇷)|(\\bFR[A]?\\d*)|(FR_\\b)|(France)|(Paris)|(法国)|(巴黎)|(法国.*(?!▷|回|转)))"
534+
match = "(?i:(^🇫🇷)|(\\bFR[A]?\\d*)|(FR_\\b)|(France)|(Paris)|(法(国)?(?!▷|回|转))|(巴黎))"
553535
emoji = "🇫🇷"
554536

555537
[[emojis.emoji]]
@@ -561,7 +543,7 @@ match = "(?i:(^🇮🇸)|(\\bIS[L]?\\d*)|(IS_\\b)|(Iceland)|(冰岛))"
561543
emoji = "🇮🇸"
562544

563545
[[emojis.emoji]]
564-
match = "(?i:(^🇰🇵)|(\\bKP\\d*)|(KP_\\b)|(North.*?Korea)|(朝鲜))"
546+
match = "(?i:(^🇰🇵)|(\\bKP\\d*)|(KP_\\b)|(North.*?K(orea|OR|R)\\s?\\d*)|(朝鲜))"
565547
emoji = "🇰🇵"
566548

567549
[[emojis.emoji]]
@@ -581,47 +563,47 @@ match = "(?i:(^🇦🇪)|(\\bUAE)|(UAE_\\b)|(Dubai)|(阿联酋)|(迪拜)|(阿拉
581563
emoji = "🇦🇪"
582564

583565
[[emojis.emoji]]
584-
match = "(?i:(^🇨🇦)|(\\bCA[N]?\\d*)|(CA_\\b)|(Canada)|(Toronto)|(Montreal)|(Vancouver)|(加拿大)|(蒙特利尔)|(温哥华)|(楓葉)|(枫叶)|(加(?!州|坡|拉|哥|利).*(?!▷|回|转)))"
566+
match = "(?i:(^🇨🇦)|(\\bCA[N]?\\d*)|(CA_\\b)|(Canada)|(Toronto|Montreal|Vancouver)|(蒙特利尔|温哥华|楓葉|枫叶)|(加(拿大)?(?!州|坡|拉|哥|利|▷|回|转)))"
585567
emoji = "🇨🇦"
586568

587569
[[emojis.emoji]]
588-
match = "(?i:(^🇯🇵)|(\\bJP[N]?\\d*)|(JP_\\b)|(Japan)|(Tokyo)|(Osaka)|(Saitama)|(日本)|(东京)|(大阪)|(埼玉)|([^\\-]日)|(日.*(?!▷|回|转))|(沪日)|(穗日)|(川日)|(中日)|(泉日)|(杭日))"
570+
match = "(?i:(^🇯🇵)|(\\bJP[N]?\\d*)|(JP_\\b)|(Japan)|(Tokyo|Osaka|Saitama)|(东京|大阪|埼玉|京都)|(日(本)?(?!▷|回|转))|([^\\-]日)|(沪日|穗日|川日|中日|泉日|杭日))"
589571
emoji = "🇯🇵"
590572

591573
[[emojis.emoji]]
592-
match = "(?i:(^🇰🇷)|((?<!North\\s)(\\bK[O]?R\\d*|KR_\\b|Korea|首尔|韩|韓)))"
574+
match = "(?i:(^🇰🇷)|((?<!North\\s)\\bK(orea|OR|R)\\s?\\d*)|(KR_\\b)|(首尔)|(韩)|(韓))"
593575
emoji = "🇰🇷"
594576

595577
[[emojis.emoji]]
596-
match = "(?i:(^🇷🇺)|(\\bRU[S]?\\d*)|(RU_\\b)|(Russia)|(Moscow)|(Petersburg)|(Siberia)|(伯力)|(莫斯科)|(圣彼得堡)|(西伯利亚)|(新西伯利亚)|(哈巴罗夫斯克)|(俄罗斯)|([^\\-]俄)|(俄.*(?!▷|回|转))|(京俄)|(杭俄))"
578+
match = "(?i:(^🇷🇺)|(\\bRU[S]?\\d*)|(RU_\\b)|(Russia)|(Moscow|Petersburg|Siberia)|(莫斯科|圣彼得堡|西伯利亚|新西伯利亚|哈巴罗夫斯克|伯力)|(俄(罗斯)?(?!▷|回|转))|([^\\-]俄)|(京俄|杭俄))"
597579
emoji = "🇷🇺"
598580

599581
[[emojis.emoji]]
600-
match = "(?i:(^🇸🇬)|(\\bSG[P]?\\d*)|(SG_\\b)|(Singapore)|(新加坡)|(狮城)|(獅城)|([^\\-]新)|(新(?!▷|西))|(沪新)|(京新)|(泉新)|(穗新)|(深新)|(杭新))"
582+
match = "(?i:(^🇸🇬)|(\\bSG[P]?\\d*)|(SG_\\b)|(Singapore)|(狮城|獅城)|(新(加坡)?(?!▷|西兰|北|疆))|(沪新|京新|泉新|穗新|深新|杭新))"
601583
emoji = "🇸🇬"
602584

603585
[[emojis.emoji]]
604-
match = "(?i:(^🇬🇧)|(\\bUK\\d*)|(UK_\\b)|(\\bGB[R]?\\d*)|(GB_\\b)|(England)|(United.*?Kingdom)|(London)|(英国)|([^\\-]英)|(伦敦)|(英.*(?!▷|回|转)))"
586+
match = "(?i:(^🇬🇧)|(\\bUK\\d*)|(UK_\\b)|(\\bGB[R]?\\d*)|(GB_\\b)|(England)|(United.*?Kingdom)|(London)|(英(国|格兰)?(?!▷|回|转))|([^\\-]英)|(伦敦))"
605587
emoji = "🇬🇧"
606588

607589
[[emojis.emoji]]
608-
match = "(?i:(^🇺🇸)|(\\bUS[A]?\\d*)|(US_\\b)|(America)|(United.*?States)|(美国)|([^\\-]美)|(波特兰)|(达拉斯)|(俄勒冈)|(凤凰城)|(费利蒙)|(硅谷)|(拉斯维加斯)|(洛杉矶)|(圣何塞)|(圣克拉拉)|(西雅图)|(芝加哥)|(盐湖城)|(水牛城)|(美.*(?!▷|回|转))|(沪美)|(京美))"
590+
match = "(?i:(^🇺🇸)|(\\bUS[A]?\\d*)|(US_\\b)|(America)|(United.*?States)|(美(国)?(?!▷|回|转))|([^\\-]美)|(波特兰|达拉斯|俄勒冈|凤凰城|费利蒙|硅谷|拉斯维加斯|洛杉矶|圣何塞|圣克拉拉|西雅图|芝加哥|盐湖城|水牛城|沪美|京美))"
609591
emoji = "🇺🇸"
610592

611593
[[emojis.emoji]]
612-
match = "(?i:(^🇭🇰)|(\\bHK[G]?\\d*)|(HK_\\b)|(Hong.*?Kong)|(\\bHKT\\d*\\b)|(\\bHKBN\\d*\\b)|(\\bHGC\\d*\\b)|(\\bWTT\\d*\\b)|(\\bCMI\\d*\\b)|(\\bHK\\d*\\b)|([^\\-]港)|(港(?!▷|回|转)))"
594+
match = "(?i:(^🇭🇰)|(\\bHK[G]?\\d*)|(HK_\\b)|(Hong.*?Kong)|(\\b(HKT|HKBN|HGC|WTT|CMI)\\d*\\b)|(港(?!▷|回|转))|([^\\-]港))"
613595
emoji = "🇭🇰"
614596

615597
[[emojis.emoji]]
616-
match = "(?i:(^🇲🇴)|(\\bMO\\d*)|(MO_\\b)|(Macao)|(澳门)|(\\bCTM\\b)|(澳(?!大利亚).*(?!▷|回|转)))"
598+
match = "(?i:(^🇲🇴)|(\\bMO\\d*)|(MO_\\b)|(Macao)|(澳门)|(\\bCTM\\b)|(澳(门)?(?!大利亚|▷|回|转)))"
617599
emoji = "🇲🇴"
618600

619601
[[emojis.emoji]]
620-
match = "(?i:(^🇹🇼)|(\\bTW[N]?\\d*)|(TW_\\b)|(Taiwan)|(新北)|(彰化)|(\\bCHT\\b)|(台湾)|([^\\-]台)|(\\bHINET\\b)|(台.*(?!▷|回|转))|(台北)|(台中))"
602+
match = "(?i:(^🇹🇼)|(\\bTW[N]?\\d*)|(TW_\\b)|(Taiwan)|(\\b(CHT|HINET)\\b)|(新北|彰化)|(台(湾|北|中)?(?!▷|回|转))|([^\\-]台))"
621603
emoji = "🇹🇼"
622604

623605
[[emojis.emoji]]
624-
match = "(?i:(^🇨🇳)|(\\bC[H]?N)|(CN_\\b)|(China)|(back)|(回国)|(中国[^\\-])|(江苏[^\\-])|(北京[^\\-])|(上海[^\\-])|(广州[^\\-])|(深圳[^\\-])|(杭州[^\\-])|(常州[^\\-])|(徐州[^\\-])|(青岛[^\\-])|(宁波[^\\-])|(镇江[^\\-])|(成都[^\\-])|(河北[^\\-])|(山西[^\\-])|(辽宁[^\\-])|(吉林[^\\-])|(黑龙江[^\\-])|(江苏[^\\-])|(浙江[^\\-])|(安徽[^\\-])|(福建[^\\-])|(江西[^\\-])|(山东[^\\-])|(河南[^\\-])|(湖北[^\\-])|(湖南[^\\-])|(广东[^\\-])|(海南[^\\-])|(四川[^\\-])|(贵州[^\\-])|(云南[^\\-])|(陕西[^\\-])|(甘肃[^\\-])|(青海[^\\-])|(内蒙古[^\\-])|(广西[^\\-])|(西藏[^\\-])|(宁夏[^\\-])|(新疆[^\\-])|(合肥[^\\-])|(中.*(?!▷|回|转))|(苏.*(?!▷|回|转))|(京.*(?!▷|回|转))|(沪.*(?!▷|回|转))|(穗.*(?!▷|回|转))|(深(?!▷|港))|(杭.*(?!▷|回|转))|(徐.*(?!▷|回|转))|(青.*(?!▷|回|转))|(甬.*(?!▷|回|转))|(镇.*(?!▷|回|转))|(禅.*(?!▷|回|转))|(蓉.*(?!▷|回|转))|(上海.*(?!▷|回|转))|(合肥.*(?!▷|回|转)))"
606+
match = "(?i:(^🇨🇳)|(\\bC[H]?N)|(CN_\\b)|(China)|(back)|(回国)|(中(国)?(?!非|▷|回|转))|((河北|山西|辽宁|吉林|黑龙江|江苏|浙江|安徽|福建|江西|山东|河南|湖北|湖南|广东|海南|四川|贵州|云南|陕西|甘肃|青海|内蒙古|广西|西藏|宁夏|新疆|北京|上海|天津|重庆|广州|深圳|杭州|成都|南京|武汉|西安|苏州|常州|徐州|青岛|宁波|镇江|合肥)[^\\-])|(((京(?!都)|沪|穗|苏|杭|徐|青|甬|镇|禅|蓉)(州|岛|江)?)(?!▷|回|转))|((?!▷|)))"
625607
emoji = "🇨🇳"
626608

627609
[[emojis.emoji]]

0 commit comments

Comments
 (0)