module.exports = {
    stringsRules: [
            /intl\.formatMessage\s*?\(\s*?(['`"])([\s\S]+?)\1\s*?(?=[,\)])/g,
        /intl\.formatHTMLMessage\s*?\(\s*?(['`"])([\s\S]+?)\1\s*?(?=[,\)])/g,
              /\{\{formatMessage\s*?\(\s*?(['`"])([\s\S]+?)\1\s*?(?=[,\)])/g,
          /\{\{formatHTMLMessage\s*?\(\s*?(['`"])([\s\S]+?)\1\s*?(?=[,\)])/g
    ],
    scopeRules: [
        /\/\/\s*intlScope:\s*([\-\w\.]+)/g,
        /^<!--[\s\S]*intlScope:\s*([\-\w\.]+)\s*-->/g
    ],
    scopeFileName: '.scope.json',
    searchDeepScopeFile: 5,
    scopeProperty: 'intl',
    defaultScope: 'none'
};
module.exports = {
    stringsRules: [
        /(?:intl\.|\{\{)format(?:HTML)?Message\s*?\(\s*?(['`"])([\s\S]+?)\1\s*?(?=[,\)])/g
    ],
    scopeRules: [
        /\/\/\s*intlScope:\s*([\-\w\.]+)/g,
        /^<!--[\s\S]*intlScope:\s*([\-\w\.]+)\s*-->/g
    ],
    scopeFileName: '.scope.json',
    searchDeepScopeFile: 5,
    scopeProperty: 'intl',
    defaultScope: 'none'
};

Speed up message extraction by using one rule (one pass) instead of 4
Speed up message extraction by using one rule (one pass) instead of 4

Time with 4 rules: getScope: 33s, tokenize: 86s, tokenizeJsx: 321ms
Time with 1 rule: getScope: 33s, tokenize: 20s, tokenizeJsx: 313ms
