开发者

Escape strings by array of chars

I have a js simple array.

array('p','(',')','?');

According to that array values i need to escape strings in js, how can i do that?

for example string is = 'hey?' and in es开发者_JAVA技巧cape array i have '?'


Something like this should work:

//for old browsers...
Array.prototype.indexOf = Array.prototype.indexOf || function(o) {
   for(var k = 0; k < this.length; ++k)
      if(this[k] === o) return k;
   return -1;
};

var escapes = ['p', '(', ')', '?'];
var array = 'hey?'.split('');

for(var i = 0; i < array.length; ++i) {
   var escapeIndex = escapes.indexOf(array[i]);
   if(escapeIndex > -1) {
      array[i] = '\\' + array[i];
   }
}

var newString = array.join('');


Not sure if this is the most efficient way to do it, but you could try something like this -

var text = "= 'hey?'";
var a = ['p','(',')','?'];
for (i=0;i<a.length;i++) {
 text = text.replace(a[i],'\\' + a[i])   
}
alert(text);

Demo - http://jsfiddle.net/aEysk/


Try this

for(var i=0;i<arr.length;i++){
var ind = strValue.IndexOf(arr[i])
    if(ind>-1)
    {
       strValue.splice(ind,1)
    }
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜