Spaces:
Running on Zero
Running on Zero
File size: 1,853 Bytes
21aadae 16c3ac7 21aadae | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | import re
SOURCE_GUIDED_REPLACEMENTS = [
("割韭菜", [(r"cắt\s+(củ\s+cải|rau\s+hẹ|hẹ)", "chặt chém người mua")]),
("克罗心", [(r"\b(Kruskin|Krosin|Kroskin|Clare\s+Croux|Clare\s+Crox|Chrome\s*Heart)\b", "Chrome Hearts")]),
("溢价", [(r"giá\s+chênh\s+lệch", "độ đội giá"), (r"mức\s+giá\s+chênh\s+lệch", "mức đội giá")]),
("机车老炮", [(r"người\s+(từng\s+là\s+)?(yêu|mê)\s+máy\s+móc", "tay chơi mô tô kỳ cựu")]),
("机车", [(r"\bmáy\s+móc\b", "mô tô"), (r"người\s+(yêu|mê)\s+mô\s+tô", "dân mê mô tô")]),
("拼皮改造", [(r"có\s+chỉ\s+thêu", "custom ghép da"), (r"chỉ\s+thêu", "ghép da custom")]),
("贵有贵的道理", [(r"lý\s+do\s+nó\s+đắt", "đắt có lý do của nó")]),
("工坊", [(r"chế\s+độ\s+hoạt\s+động\s+của\s+xưởng", "cách vận hành xưởng")]),
]
GENERAL_REPLACEMENTS = [
(r"Chrome\s*Hearts", "Chrome Hearts"),
(r"Richard\s*Stark", "Richard Stark"),
(r"John\s*Bowman", "John Bowman"),
(r"Leonard\s*Kamhout", "Leonard Kamhout"),
(r"\bLevis\b", "Levi's"),
(r"vòng\s+văn\s+hóa\s+phụ", "giới văn hóa underground"),
(r"cũng\s+cũng", "cũng"),
(r"\s+", " "),
]
def post_edit_translation(source_text, translated_text):
text = str(translated_text or "").strip()
source = str(source_text or "")
if not text:
return text
for pattern, replacement in GENERAL_REPLACEMENTS:
text = re.sub(pattern, replacement, text, flags=re.IGNORECASE)
for source_term, replacements in SOURCE_GUIDED_REPLACEMENTS:
if source_term in source:
for pattern, replacement in replacements:
text = re.sub(pattern, replacement, text, flags=re.IGNORECASE)
return re.sub(r"\s+", " ", text).strip(" ,")
|