javascipt匹配單行和多行注釋的正則表達(dá)式
更新時間:2013年11月20日 15:56:16 作者:
用JSON.parse 來轉(zhuǎn)換成json對象,由于有注釋的存在則無法正確轉(zhuǎn)換甚至報錯。匹配字符串中的所有注釋,包括單行和多行注釋
在使用node.js時。如果我們使用.json文件存儲一些配置時,希望加上一些注釋。
但是由于讀取時,是讀取字符串 ,然后用JSON.parse 來 轉(zhuǎn)換成json對象,由于有注釋的存在則無法正確轉(zhuǎn)換甚至報錯。
一下正則表達(dá)式 匹配字符串中的所以注釋,包括單行和多行注釋
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)
測試地址:
http://gskinner.com/RegExr/?30jrh
注意 當(dāng)使它用作 字符串 的正則時應(yīng)該,注意使用逃脫字符 \
所以需要下面這樣寫:
var reg = "(/\\\*([^*]|[\\\r\\\n]|(\\\*+([^*/]|[\\\r\\\n])))*\\\*+/)|(//.*)";
var exp = new RegExp(reg,"g");
用 \\\ 表示 \
但是由于讀取時,是讀取字符串 ,然后用JSON.parse 來 轉(zhuǎn)換成json對象,由于有注釋的存在則無法正確轉(zhuǎn)換甚至報錯。
一下正則表達(dá)式 匹配字符串中的所以注釋,包括單行和多行注釋
復(fù)制代碼 代碼如下:
(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/)|(//.*)
測試地址:
http://gskinner.com/RegExr/?30jrh
注意 當(dāng)使它用作 字符串 的正則時應(yīng)該,注意使用逃脫字符 \
所以需要下面這樣寫:
復(fù)制代碼 代碼如下:
var reg = "(/\\\*([^*]|[\\\r\\\n]|(\\\*+([^*/]|[\\\r\\\n])))*\\\*+/)|(//.*)";
var exp = new RegExp(reg,"g");
用 \\\ 表示 \
相關(guān)文章
JavaScript如何監(jiān)測數(shù)組的變化
最近在造輪子的時候遇到了這么一個問題,那就是數(shù)組在調(diào)用內(nèi)部方法的時候怎么才可以監(jiān)聽到數(shù)組發(fā)生了變化,這篇文章主要給大家介紹了關(guān)于JavaScript如何監(jiān)測數(shù)組變化的相關(guān)資料,需要的朋友可以參考下2021-07-07
JavaScript數(shù)據(jù)結(jié)構(gòu)中棧的應(yīng)用之表達(dá)式求值問題詳解
這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)中棧的應(yīng)用之表達(dá)式求值問題,詳細(xì)分析了中綴表達(dá)式、后綴表達(dá)式等概念、原理與轉(zhuǎn)換方法,以及基于后綴表達(dá)式實現(xiàn)的表達(dá)式求值相關(guān)操作技巧,需要的朋友可以參考下2017-04-04
JavaScript 瀏覽器對象模型BOM原理與常見用法實例分析
這篇文章主要介紹了JavaScript 瀏覽器對象模型BOM原理與常見用法,結(jié)合實例形式詳細(xì)分析了JavaScript瀏覽器對象模型BOM基本概念、原理、使用方法及操作注意事項,需要的朋友可以參考下2019-12-12
BootStrap初學(xué)者對彈出框和進(jìn)度條的使用感覺
這篇文章主要介紹了BootStrap初學(xué)者對彈出框和進(jìn)度條的使用感覺的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-06-06

