【发布时间】:2017-10-12 22:40:20
【问题描述】:
我在正则表达式方面并不是很强大,并试图用我自己的自行车手工编写的解析器来解决一个问题,但它在一些我无法预料的输入上失败了,问题如下:我有 JavaScript i18n 文件,连同翻译,包含一些可能在文件中某处定义的其他配置内容(这是使用手工解析器很难处理问题的主要原因),所以文件是这样的:
(function() {
'use strict';
//some configuration stuff (some other stuff may be insterted)
var translations = angular.module('module.translations.languages.enUs', []);
translations.constant('translationsName', {
"first_label":"first_label_value",
"second_label":"second_label_value"
//etc
});
}());
上面的例子只是可能的模板选项之一,但它们都有一个共同点——翻译标签被定义为一个键值 json,它只不过是一个序列化为 json 的 java map。 我的目标是只从文件中获取这些键值 json,将其反序列化为映射,对其进行一些操作并再次将其插入。所以问题是:也许有人已经准备好并且经过验证的正则表达式可以处理这种情况 - 在文本中找到键值 json 的映射?如果是这样,我将非常感激! 谢谢, 干杯, 安德烈
【问题讨论】: