0
我想寫一個函數,它接受一個字符串並返回一個包含所有塊註釋內容的數組。例如:如何使用正則表達式從字符串中提取塊註釋?
var text = 'This is not a comment\n/*this is a comment*/\nNot a comment/*Another comment*/';
var comments = getComments(text);
和「評論」將與值的數組:
['this is a comment', 'Another comment']
我試圖與此代碼:
function getComments(text) {
var comments,
comment,
regex;
comments = [];
regex = /\/\*([^\/\*]*)\*\//g;
comment = regex.exec(text);
while(comment !== null) {
skewer.log(comment);
comments.push(comment[1]);
comment = regex.exec(text);
}
return comments;
}
的問題是,如果有一個其*或/裏面的評論,它不匹配
這隻適用於* most *但不是所有的情況。以'var a =「/ *」; var b =「* /」;'例如 - 不應該提取任何評論。 – nhahtdh 2014-11-25 02:40:53