Match everything except for specified strings

前端 未结 7 1766
名媛妹妹
名媛妹妹 2020-11-22 14:25

I know that the following regex will match \"red\", \"green\", or \"blue\".

red|green|blue

Is there a straightforward way of making it mat

7条回答
  •  温柔的废话
    2020-11-22 14:34

    All except word "red"

    var href = '(text-1) (red) (text-3) (text-4) (text-5)';
    
    var test = href.replace(/\((\b(?!red\b)[\s\S]*?)\)/g, testF); 
    
    function testF(match, p1, p2, offset, str_full) {
      p1 = "-"+p1+"-";
      return p1;
    }
    
    console.log(test);

    All except word "red"

    var href = '(text-1) (frede) (text-3) (text-4) (text-5)';
    
    var test = href.replace(/\(([\s\S]*?)\)/g, testF); 
    
    function testF(match, p1, p2, offset, str_full) {
      p1 = p1.replace(/red/g, '');
      p1 = "-"+p1+"-";
      return p1;
    }
    
    console.log(test);

提交回复
热议问题