萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> JS 正則去除'//'和'/* */'注釋

JS 正則去除'//'和'/* */'注釋

var reg = /("([^"]*(.)?)*")|('([^']*(.)?)*')|(/{2,}.*?(r|n))|(/*(n|.)*?*/)/g,
// 正則表達式
    str = $('event').html(); // 欲處理的文本
console.log(str); // 打印出:原文本
console.log(str.match(reg));// 打印出:匹配子串
str.replace(reg, function(word) { // 去除注釋後的文本
    return /^/{2,}/.test(word) || /^/*/.test(word) ? "" : word;
});

這個正則表達式,擁有4個子表達式:前兩個是用來捕獲" "和' '字符串,後兩個分別用來選取和/* */注釋。
最需要注意的是第4個子表達式:

(/{2,}.*?(r|n))|(/*(n|.)*?*/)

後面那個?號很關鍵,這個必須要用懶惰匹配,不然不能避免下圖中的“干擾項2”。

copyright © 萬盛學電腦網 all rights reserved