正则表达式replace用法

正则匹配特殊字符。后面的字段。 

var  NewsManumainTextContent ="发达发达发送打发【同声期】【同声期】大是大非阿斯蒂芬士大夫十大【同声期】【同声期】大是大非阿斯蒂芬士大夫十大【同声期】【测试type2】是打发斯蒂芬是大法官好地方广东佛山改善地方公司【6546876】阿斯顿发打算发达发【测试type1】111【测试type2】222【男播】333【女播】444【同声期】555【测试type2】666【测试type1】777【正文】888【nn】999发生的发生发生的烦恼和广告费和鬼地方个的共和党"


var typeAllRef="男播|女播|同声期|测试type2|测试type1|正文|nn"

var typeSelectRef="男播|女播|同声期|测试type2|测试type1|正文|nn"

            var matchRegexStrings = function (allReg, allType) {
                var reg = '/(【)(((?!(【|' + allType + ')).)*】)/g'
                NewsManumainTextContent = NewsManumainTextContent.replace(eval(reg), function (match, $1, $2) { return "wojiuishilyyaaa" + $2 });
                var reg4 = '/(' + allReg + ')】([^【]*)【|(' + allReg + ')】([^【]*)$/gi';
                var arrAll = [];
                NewsManumainTextContent.replace(eval(reg4), function (match, $1, $2,$3,$4) {
                    $1 = $1 ? '【' + $1 + '】:   ' : '';
                    if ($2) {
                        var match = ($1 + $2).replace(/wojiuishilyyaaa/g, "【")
                        arrAll.push(match);
                    }
                    // $2 ? arrAll.push($1+$2) : '';
                    $3 = $3 ? '【' + $3 + '】:   ' : '';

                    if ($4) {
                        var match = ($3 + $4).replace(/wojiuishilyyaaa/g, "【")
                        arrAll.push(match);
                    }
                    // $4 ? arrAll.push($3+$4) : '';
                })
                return arrAll
            }



var tmpArr = matchRegexStrings(typeSelectRef, typeAllRef)
            console.log(tmpArr)

 

你可能感兴趣的:(正则表达式)