VS Code: как создать фрагмент кода Python, который после попадания строки или выражения будет преобразовывать его

Основная операция - преобразовать значение из строки в число, которое невозможно обработать в aggregate pipeline operation в настоящее время. mapReduce - альтернатива, как показано ниже.

db.c.mapReduce(function() {
    emit( this.groupId, {score: Number(this.value), count: 1} );
}, function(key, values) {
    var score = 0, count = 0;
    for (var i = 0; i < values.length; i++) {
        score += values[i].score;
        count += values[i].count;
    }
    return {score: score, count: count};
}, {finalize: function(key, value) {
    return {score: value.score / value.count};
}, out: {inline: 1}});
2
задан kokogar 4 March 2019 в 18:37
поделиться

1 ответ

Я не думаю, что это возможно, чтобы соответствовать именно то, что вам нужно. Как насчет чего-то вроде:

"Print": {
    "prefix": ".print",
    "body": [
        "print(${TM_CURRENT_LINE/(.*)\\..+$/$1/})[110]"
    ],
    "description": "Print"
}

Если я напишу a.print и нажму ENTER, это будет выводом:

aprint(a)

Если я напишу «a» .print, это будет быть вывод:

"a"print("a")

Затем вы должны удалить первую часть. Это основано на том, что я знаю, что некоторые поиски не привели к лучшему решению.

Это будет иметь некоторые проблемы, если вы будете использовать его в строке, состоящей из других операторов, потому что это займет TM_CURRENT_LINE. См. Переменные .

0
ответ дан ALFA 4 March 2019 в 18:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: