posts - 45,  comments - 136,  views - 13万

在Javascript里通过原型扩展和正则表达式实现类似于C#里的String.Format方法.

方法实现:

 

复制代码
String.prototype.format = function (args) {
       
var str = this;
       
return str.replace(new RegExp("{-?[0-9]+}""g"), function(item) {
       
var intVal = parseInt(item.substring(1, item.length - 1));
       
var replace;
       
if (intVal >= 0) {
            replace 
= args[intVal];
       } 
else if (intVal === -1) {
            replace 
= "{";
       } 
else if (intVal === -2) {
            replace 
= "}";
       } 
else {
            replace 
= "";
       }
       
return replace;
    });
};
复制代码

 使用如下:

var str = "She {1} {0}{2} by the {0}{3}. {-1}^_^{-2}";
str 
= str.format(["sea""sells""shells""shore"]);
alert(str);
//out put: She sells seashells by the seashore. {^_^}

原文地址:String.Format in JavaScript

posted on 2011-06-26 16:43  空空儿  阅读(528)  评论(0)    收藏  举报
编辑推荐:
· 一则复杂 SQL 改写后有感
· golang中写个字符串遍历谁不会?且看我如何提升 50 倍
· C# 代码如何影响 CPU 缓存速度?
· 智能桌面机器人:使用 .NET 为树莓派开发 Wifi 配网功能
· C# 模式匹配全解:原理、用法与易错点
阅读排行:
· 《程序员的底层思维》读后感
· 曾经风光无限的 Oracle DBA 已经落伍了吗?
· C# 锁机制全景与高效实践:从 Monitor 到 .NET 9 全新 Lock
· 一则复杂 SQL 改写后有感
· 接口被刷百万QPS,怎么防?
点击右上角即可分享
微信分享提示