使用nodeJs查找js文件中的所有类

时间:2016-10-05 09:03:01

标签: javascript node.js

我想查找js文件中的所有类,并将其添加到nodeJs的数组中。 现在我在控制台//打开但我想要 //打开,carambar(所有结果)

请参阅我的代码:

var fs = require('fs');
var regExp = /addClass\([\s'"]*(.*?)[\s'"]*\)/gm;
var res;
var file, match;
fs.readFile('assets/js/src/menu.js', (err, data) => {
    if (err) throw err;
    file = ''+data;
    match = regExp.exec(file);
    console.log(file);
    console.log('match: '+match[1],' type: '+typeof match, 'match length '+match.length);
});

以及我寻求的文件:

if (matchMedia('(max-width: 1023px)').matches) {
    //console.log("under 1023px");
    // Mega Menu Mobile
    // Open main-menu
    jQuery(".button__menu-open").on("click", function(e){
        e.preventDefault();
        jQuery(".menu__mobile").addClass("opened");
        jQuery(".menu__mobile").addClass("carambar");
        jQuery("html, body").addClass("menu-mobile--active");
    });
    // Close menu
    jQuery(".button__menu-close").on("click", function(e){
        e.preventDefault();
        jQuery(".menu__mobile").removeClass("opened");
        jQuery("html, body").removeClass("menu-mobile--active");
    });

}

谢谢你

1 个答案:

答案 0 :(得分:0)

使用while(match)查找所有出现次数

var fs = require('fs');
var regExp = /addClass\([\s'"]*(.*?)[\s'"]*\)/gm;
var res;
var file, match;
fs.readFile('b.js', (err, data) => {
   if (err) throw err;
   file = ''+data;
   while(match = regExp.exec(file)){
     console.log('match: '+match[1],' type: '+typeof match, 'match length '+match.length);
   }
});

哪个显示: 匹配:打开类型:对象匹配长度2 匹配:carambar类型:对象匹配长度2 匹配:menu-mobile - 活动类型:对象匹配长度2