我正在使用GoogleTranslate()
表格将一些内容翻译成不同的语言。在这些内容中,我们有一些不需要翻译的占位符。例如:
This is a Sample Text added by `{__NAME__}` on `{__DATE__}`
我不需要翻译和 之类的占位{__NAME__}
符{__DATE__}
。
如何从翻译过程中跳过这些单词?
我正在使用GoogleTranslate()
表格将一些内容翻译成不同的语言。在这些内容中,我们有一些不需要翻译的占位符。例如:
This is a Sample Text added by `{__NAME__}` on `{__DATE__}`
我不需要翻译和 之类的占位{__NAME__}
符{__DATE__}
。
如何从翻译过程中跳过这些单词?
=ARRAYFORMULA(QUERY(IFERROR(VLOOKUP(TRANSPOSE(SPLIT(GOOGLETRANSLATE(QUERY(
REGEXREPLACE(TRANSPOSE(SPLIT(A1, " ")), "\{.*\}", "♦"),, 999^99), "en", "es"), " ")),
{REGEXREPLACE(TRANSPOSE(SPLIT(A1, " ")), "\{.*\}", "♦"), TRANSPOSE(SPLIT(A1, " "))}, 2, 0),
TRANSPOSE(SPLIT(GOOGLETRANSLATE(QUERY(REGEXREPLACE(
TRANSPOSE(SPLIT(A1, " ")), "\{.*\}", "♦"),,999), "en", "es"), " "))),,999^99))
最后找到一种方法,因为 gtranslate 不翻译电子邮件地址似乎合乎逻辑,您可以轻松地使用电子邮件模式保护单词:
例如,将以下句子从 en 翻译为 ru:“我需要 %amount% of cherry”
从 en 到 ru 的原始翻译使用:=GOOGLETRANSLATE(A3,"en", "ru")
"Мне нужно% Сумма% вишни"
步骤 1:将 %amount% 替换为 skip@skip.amount.skip.com :
=GOOGLETRANSLATE(REGEXREPLACE(A3, "%(.*?)%", "skip@skip.$1.skip.com"),"en", "ru")
Мне нужно skip@skip.amount.skip.com вишни
Step2 : 用%amount% 替换回skip@skip.amount.skip.com,
=REGEXREPLACE(GOOGLETRANSLATE(REGEXREPLACE(A5, "%(.*?)%", "skip@skip.$1.skip.com"),"en", "tr"), "(?i)skip@\s*skip.(.*?).skip.com", "%$1%")
Мне нужно %amount% вишни