JavaScript.String.Format函数的实现
<script type="text/javascript">
//V1 method
String.prototype.format = function()
{
var args = arguments;
return this.replace(/\{(\d+)\}/g,
function(m,i){
return args[i];
});
}
//V2 static
String.format = function() {
if( arguments.length == 0 )
return null;
var str = arguments[0];
for(var i=1;i<arguments.length;i++) {
var re = new RegExp('\\{' + (i-1) + '\\}','gm');
str = str.replace(re, arguments[i]);
}
return str;
}
var a = "I Love {0}, and You Love {1},Where are {0}! {4}";
alert(String.format(a, "You","Me"));
alert(a.format("You","Me"));
</script>
String.replace( ) 简介
语法:
Code:
string.replace(regexp, replacement)
regexp :您要执行替换操作的正则表达式,如果传入的是一个字符串,那就会当作普通字符来处理,并且只会执行一次替换操作;如果是正则表达式,并且带有 global (g) 修饰符,则会替换所有出现的目标字符,否则,将只执行一次替换操作。
replacement :您要替换成的字符。
返回值是执行替换操作后的字符串。
String.replace( ) 的简单用法
Code:
var text = "javascript 非常强大 !";
text.replace(/javascript/i, "JavaScript");
// 返回:JavaScript 非常强大 !
String.replace( ) 替换所有出现的目标字符
Code:
var text= "javascript 非常强大 !JAVASCRIPT 是我最喜欢的一门语言 !";
text.replace(/javascript/ig, "JavaScript");
// 返回:JavaScript 非常强大 !JavaScript 是我最喜欢的一门语言 !
String.replace( ) 实现调换位置
Code:
var name= "Doe, John";
name.replace(/(\w+)\s*,\s*(\w+)/, "$2 $1");
// 返回:John Doe
String.replace( ) 实现将所有双引号包含的字符替换成中括号包含的字符
Code:
var text = '"JavaScript" 非常强大!';
text.replace(/"([^"]*)"/g, "[$1]");
// 返回:[JavaScript] 非常强大!
String.replace( ) 将所有字符首字母大写
Code:
var text = 'a journey of a thousand miles begins with single step.';
text.replace(/\b\w+\b/g, function(word) {
return word.substring(0,1).toUpperCase( ) +
word.substring(1);
});
// 返回:A Journey Of A Thousand Miles Begins With Single Step.
来源参考:
V1:http://samlin.cnblogs.com/archive/2008/01/25/1053610.html
V2:http://www.cnblogs.com/hwade/articles/867767.html
String.replace的特殊用法:
http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Global_Objects:String:replace
String.replace的妙用: