我正在尝试使用mBART进行多语种翻译(大约30种语言),但我在使用它时面临一个问题,因为我目前正在使用兰吉德识别语言,然后加载mBART并根据已识别的语言代码翻译所有单词。但是mBART对语言代码使用这种奇怪的格式,例如:
en_XX -> English
hi_IN -> Hindi
ro_RO -> Romanian
而Langid以这种格式输出它们:
af, am, an, ar, as, az, be, bg, bn, br
我似乎找不到任何关于如何解释mBART语言代码的文档,因为即使是研究论文也没有包括它。
我有以下表达式:[^(\r\n)]*来识别任何不包含\r\n的文本。但是,当文本包含(或)时,则无法识别。
示例:
"I have following expression to recognize any text."将被确认为OK。
"I have following expression (A) to recognize any text."将不被识别。
因此,我想要全文:"I have following expression (A) to recognize any text."
我应该以这种方式从文本结构中提取多语种内容:
一些意大利文本/it英语文本/en bla bla bla
其他文本其他意大利语/it其他英语文本/en bla bla bla
我将摘取所有不附在beetwen多语种方括号内的案文和附在beetwen当前语文方括号内的案文。
例如,如果当前语言为"en“,我将提取以下文本:
一些文本英语文本bla
其他英文文本
如何使用正则表达式正确提取文本?