Greasy Fork

string format

Format a string with '{0}','{1}'...

目前为 2022-11-05 提交的版本。查看 最新版本

此脚本不应直接安装,它是一个供其他脚本使用的外部库。如果您需要使用该库,请在脚本元属性加入:// @require https://update.greasyfork.cloud/scripts/453846/1113532/string%20format.js

// ==UserScript==
// @name string format
// @namespace http://tampermonkey.net/
// @version 2.0.2
// @description Format a string with '{0}','{1}'...
// @license MIT
// @author 捈荼
// ==/UserScript==

(function () {
    "use strict";

    if (String.prototype.format == undefined) {
        let string_format_V2_0_2 = function () {
            let args = arguments;
            let cnt = 0;
            return this.match(/{(\d+)}/g) == null && this.match(/{}/g) != null ?
                this.replace(/{}/g, (match) => {
                    return typeof args[cnt] != 'undefined' ? args[cnt++] : match;
                }) :
                this.replace(/{(\d+)}/g, (match, number) => {
                    return typeof args[number] != 'undefined' ? args[number] : match;
                });
        };
        String.prototype.format = string_format_V2_0_2;
    } else {
        if (String.prototype.format.name != 'string_format_V2_0_2') {
            throw 'String.prototype.format defined.';
        }
    }
})();