87,990
社区成员
发帖
与我相关
我的任务
分享var s="my javascript is very poor,who can help me?"
s = s.replace(/\b(my|is|can)\b/g, function($0, $1) {
return {
"my": "his"
, "is": "was"
, "can": "could"
}[$1];
});
alert(s);
<script>
var s="my javascript is very poor,who can help me?"
var reg=/(\w*)my(.*)is(.*)can(.*)/g
alert(s.replace(reg,"$1his$2was$3could$4"));
</script>
Array.prototype.each = function(trans) {
for (var i=0; i<this.length; i++)
this[i] = trans(this[i], i, this);
return this;
};
Array.prototype.map = function(trans) {
return [].concat(this).each(trans);
};
RegExp.escape = function(str) {
return new String(str).replace(/([.*+?^=!:${}()|[\]\/\\])/g, '\\$1');
};
function properties(obj) {
var props = [];
for (var p in obj) props.push(p);
return props;
}
// ---------------------------------------------
var str = "my javascript is very poor,who can help me?";
var replacements = {
"my" : "his"
, "is" : "was"
, "can": "could"
};
var regex = new RegExp(properties(replacements).map(RegExp.escape).join("|"), "g");
str = str.replace(regex, function($0) { return replacements[$0]; });
WScript.Echo(str);
var str="my javascript is very poor,who can help me?"
alert(str.replace(/\bmy\b/i,"his").replace(/\bis\b/i,"was").replace(/\bcan\b/i,"could"));/i,全局匹配,\b匹配空格或起始
<script>
var s="my javascript is very poor,who can help me?"
var reg=/(\w*)my(.*)is(.*)can(.*)/g
alert(s.replace(reg,"$1his$2was$3could"));
</script>