• JS自定义字符串格式化函数


    python的字符串格式化

    test = 'name: {name} age: {age}'
    print(test.format(name='zq',age=22))
    输出: name: zq age: 22

    JS里没有这种方式,但可以自定义一个类似的方法

    <script>
        //自定义字符处理函数---- 字符串替换格式化
        String.prototype.format = function (kwargs) {
            console.log(this) // this表示调用这个函数的字符串对象 String {"nihao:{name}-{age}"}
            // 正则表达式是在/ /内表示, 正则后的g表示去this里面匹配所有的字符(执行全局匹配(查找所有匹配而非在找到第一个匹配后停止))  i表示执行对大小写不敏感的匹配  m表示执行多行匹配
            var ret = this.replace(/{(w+)}/g,function (k,m) { //k表示匹配到的字符串,m表示匹配到的分组里的值,在正则中用()表示一个分组
                console.log(k,m);  //{name} name
                return kwargs[m]  // 把匹配到的字符串用参数的值替换
            });
    
            return ret;  //把替换完的字符串返回
        };
        text = "nihao:{name}-{age}";
        result = text.format({'name':'zq','age':21});
        console.log(result);  // nihao:zq-21
    </script>

  • 相关阅读:
    BZOJ 1009 GT考试
    BZOJ 2085 [POI2010] Hamsters
    BZOJ 3160 万径人踪灭
    左偏树 / 非旋转treap学习笔记
    BZOJ 3217 ALOEXT
    BZOJ 3065 带插入区间第K小值
    BZOJ2716 天使玩偶
    XSY1659 [HNOI2012]永无乡
    BZOJ1367【Baltic2004】sequence
    蔡勒公式 计算星期
  • 原文地址:https://www.cnblogs.com/zq8421/p/10629941.html
Copyright © 2020-2023  润新知