You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于自定义印尼语俚语/缩写字典替换Excel文本中的对应词汇

批量实现印尼语俚语/缩写精准替换的落地方法

对照表预处理逻辑

  • 统一txt对照表的解析规则:每行存储一组「俚语/缩写-标准表达」的映射关系,用Tab或固定单分隔符(如|)拆分,剔除无规则排版、空行、重复词条,从根源减少解析错误
  • 构建替换字典时必须启用全词匹配规则,禁止使用简单的字符串包含逻辑做匹配,避免子串误替换:例如匹配俚语“deh”时,不会将单词“ledhek”内包含的“deh”片段错误替换为标准表达
  • 自动做大小写归一处理:匹配阶段统一将俚语词条、待处理文本转为小写做一致性比对,替换时匹配原文本的大小写格式,避免出现匹配遗漏

Excel批量替换实现

  • 基于pandas库实现全流程兼容,支持所有主流Excel格式读取、导出,不会破坏原表的列结构、基础格式
  • 核心实现代码(可直接根据实际文件路径、分隔符调整参数运行):
import pandas as pd
import re

# 读取并解析txt对照表
replace_dict = {}
with open("indonesian_slang.txt", "r", encoding="utf-8") as f:
    for line in f:
        line = line.strip()
        if not line:
            continue
        # 按实际txt的分隔符调整拆分规则,示例以|为分隔符
        slang_term, standard_term = line.split("|", maxsplit=1)
        replace_dict[slang_term.strip().lower()] = standard_term.strip()

# 构建全词匹配正则,避免子串误匹配
match_pattern = re.compile(
    rf'\b({"|".join(re.escape(term) for term in replace_dict.keys())})\b',
    re.IGNORECASE
)

def get_replacement(match_content):
    # 匹配命中后返回对应标准表达
    return replace_dict[match_content.group(0).lower()]

# 加载Excel文本数据,自动跳过数值、日期类非文本列
excel_df = pd.read_excel("raw_text_data.xlsx")
text_columns = excel_df.select_dtypes(include=["object"]).columns
# 逐单元格执行替换
excel_df[text_columns] = excel_df[text_columns].apply(
    lambda col: col.str.replace(match_pattern, get_replacement)
)

# 导出替换完成的结果
excel_df.to_excel("slang_replaced_output.xlsx", index=False)

结果校验注意点

  • 重点排查三类高概率错误场景:
    • 带特殊符号的俚语/缩写(如包含斜杠、感叹号、连字符的词条),确认无漏匹配
    • 文本中夹杂的英文专有名词、印尼语固有生僻词,确认没有被误判为俚语替换
    • 长文本中连续出现多个俚语的场景,确认所有命中词条都被正确替换

提示:如果对照表的词条数量超过1万条,可提前将正则的匹配规则优化为字典树结构,提升大文件的替换运行效率

内容的提问来源于stack exchange,提问作者ramdanirizki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.25 02:36:08