Javascript /:Unterminated groupregular expression:/R<;f(9f

Javascript /:Unterminated groupregular expression:/R<;f(9f,javascript,node.js,regex,fs,Javascript,Node.js,Regex,Fs,我有两个非常大的txt文件,文件A包含一些字符串,在文件B上我有我将在文件A上搜索的所有字符串 实际上,我将文件B转换为数组,并使用fs加载了文件A。问题是文件B包含一些奇怪的字符串,如R,您需要逐字转义该字符串以在正则表达式中使用。不幸的是,似乎没有内置的方法来实现这一点,但是有npm包可用于此目的,如此:不幸的是,你给我的包不起作用…ReferenceError:escapeStringRegexp没有定义你有没有需要d它?在这里工作很好。不过这只是包中的一部分,关于npm还有很多,你可以选

我有两个非常大的txt文件,文件A包含一些字符串,在文件B上我有我将在文件A上搜索的所有字符串


实际上,我将文件B转换为数组,并使用fs加载了文件A。问题是文件B包含一些奇怪的字符串,如
R,您需要逐字转义该字符串以在正则表达式中使用。不幸的是,似乎没有内置的方法来实现这一点,但是有npm包可用于此目的,如此:

不幸的是,你给我的包不起作用…
ReferenceError:escapeStringRegexp没有定义
你有没有
需要
d它?在这里工作很好。不过这只是包中的一部分,关于npm还有很多,你可以选择适合你的。没问题,我自己做了func
RegExp.escape=函数{返回s.replace(/[-\/\^$*+.()\\[\]{}]/g,'\\$&');};
console.time('program');
const fs = require('fs');


const filePath = "./processhackerfile.txt";
const hackStringsPath = "./hackstrings.txt";

var hackStrings = fs.readFileSync(hackStringsPath).toString().split("\n");
console.log(hackStrings.length);
var file = fs.readFileSync(filePath).toString();

for(i in hackStrings){

    var regex = new RegExp(hackStrings[i].toString(), 'i');
    var stringSearch = file.match(regex);

    if(stringSearch != null){
        console.log(`Cheat found, string name: ${stringSearch}`);
    } else {
        console.log('Cheat not found');
    }
}


console.timeEnd('program');