JavaScript——replace方法
一、定义和用法
replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
1.语法
javascript stringObject.replace(regexp/substr,replacement)
参数 | 描述 |
---|---|
regexp/substr | 必需。规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象。 |
replacement | 必需。一个字符串值。规定了替换文本或生成替换文本的函数。 |
注意replacement也可以是 函数 而非字符串
2.返回值
用replacement替换后的新的字符串。
二、实例
1.无名杀中的代码片段
ui.controls[0].replace('如果你感到游戏较卡,可以开启流畅模式',function(){
ui.controls[0].replace('在技能一栏中,可以设置自动发动或双将禁配的技能',function(){
ui.click.menuTab('武将');
ui.controls[0].replace('在武将或卡牌一栏中,单击武将/卡牌可以将其禁用',function(){
ui.click.menuTab('战局');
ui.controls[0].replace('在战局中可以输入游戏命令,或者管理录像',function(){
ui.click.menuTab('帮助');
ui.controls[0].replace('在帮助中,可以检查更新和下载素材',function(){
ui.click.configMenu();
ui.window.classList.remove('noclick_important');
ui.control.classList.remove('noclick_click_important');
ui.control.style.top='';
step5();
});
});
});
});
});
挑出最内层的replace:
ui.controls[0].replace('在帮助中,可以检查更新和下载素材',function(){
ui.click.configMenu();
ui.window.classList.remove('noclick_important');
ui.control.classList.remove('noclick_click_important');
ui.control.style.top='';
step5();
});
2.替换字符串
代码:
var str="Hello world!"
document.write(str.replace(/world/, "you"))
输出为:Hello you!
3.所有单词首字母转换成大写
代码:
name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
return word.substring(0,1).toUpperCase()+word.substring(1);
});
正则表达式 | 含义 |
---|---|
\b | 匹配一个单词边界,即字与空格间的位置 |
\w | 匹配字母、数字、下划线。等价于 [A-Za-z0-9_] |
g | g表示global,也就是搜索整个字符串所有匹配的项。如果无, 则只搜索出第一个结果 |
代码含义是找到所有单词,并将单词首字母大写,然后替换原单词。
形式类似于“二、实例 1.”的代码。