1. 程式人生 > >正則表示式replace()小案例

正則表示式replace()小案例

**

正則表示式中replace()的一個案例

String.method('news',function(){
    var entity ={
        quot: '"',
        lt: '<',
        gt:'>'
    };
    return  function(){
       return this.replace(/&([^&;]+);/g,function(a,b){
      **//引數a是匹配正則的子串,本別是 &lt;  &quot; &gt; 
      **//引數b是匹配正則中()中的字串,分別是  lt,  quot, gt,**
      **//r 的值分別為    <,  ",  >**
      //正則中的replace就是用返回值代替 引數a,**
            var r = entity[b];
            return typeof r === 'string'? r:a;
        });
    }
    
}());
  console.log('&lt;&quot;&gt;'.news())  //返回的是<''>
  
  //由此可以推出當執行this.replace(/&([^&;]+);/,function(a,b) ,把g去掉 返回的結果就是<&quot;&gt;

**