首页 > 解决方案 > 从路径文件中提取语言环境的工具

问题描述

我有类似的文件名:

c:\dev\test\payment\src\main\resources\content\Language.properties
c:\dev\test\payment\src\main\resources\content\Language_cs.properties
c:\dev\test\payment\src\main\resources\content\Language_de.properties
c:\dev\test\payment\src\main\resources\content\Language_en.properties
c:\dev\test\payment\src\main\resources\content\Language_fi.properties
c:\dev\test\payment\src\main\resources\content\Language_fr.properties
c:\dev\test\payment\src\main\resources\content\Language_nb.properties 

我使用以下代码,它工作正常:

            const LOCALE_PATTERN = /_([a-z]{2}(_[A-Z]{2})?).properties/;
            let match = LOCALE_PATTERN.exec(file);
            let locale = 'default';
            if (match) locale = match[1];
            if (!results[locale]) results[locale] = {};

但其他文件具有几乎相同的路径我找不到正确的方法,因为我需要代码在系统 Windows 和 linux 上工作:

c:\dev\test\modules\provider\assets\locales\cs\translation.json
c:\dev\test\modules\provider\assets\locales\de\translation.json
c:\dev\test\modules\provider\assets\locales\en_GB\translation.json
c:\dev\test\modules\provider\assets\locales\en_US\translation.json
c:\dev\test\modules\provider\assets\locales\fi\translation.json
c:\dev\test\modules\provider\assets\locales\fr\translation.json
c:\dev\test\modules\provider\assets\locales\nb\translation.json
c:\dev\test\modules\provider\assets\locales\nn\translation.json
c:\dev\test\modules\provider\assets\locales\ru\translation.json
c:\dev\test\modules\provider\assets\locales\sv\translation.json

标签: node.js

解决方案


推荐阅读