【发布时间】:2021-11-14 18:31:44
【问题描述】:
有点麻烦:
let data = fs.readFileSync(pathToCsv, "utf8");
数据的价值是:
clan,mem1,mem2,mem3,mem4,language,managerID,serverJoinedDate
pm,
pm
(通过 console.log())
但data.toString().includes("pm") 仍然是假的。
这是我的完整代码:
const filter = (m) => m.author.bot === false;
await ogMessage.author.dmChannel
.awaitMessages(filter, {
max: 1,
time: 60000,
})
.then((collected) => {
if (clans[parseInt(collected.toJSON()[0].content) - 1]) {
let clan = clans[parseInt(collected.toJSON()[0].content) - 1];
let data = fs.readFileSync(pathToCsv, "utf8");
console.log(typeof clan);
// let reg = new RegExp(clan, "g");
// let count = (data.match(reg) || []).length;
if (data.split(",").includes(clan)) {
ogMessage.author.send(
"People from this clan are already registered!\nPlease contact the hosts for help!"
);
return;
} else {
teamCheck = true;
}
} else {
ogMessage.author.send("Invalid Clan! Please try again!");
return;
}
})
.catch((collected) => {
try {
console.log("Error" + collected);
} catch (e) {
console.log(e);
}
});
if (teamCheck === false) {
return;
}
我尝试使用正则表达式拆分数据,但似乎对返回的字符串不起作用
readFileSync()
PS。我正在制作一个不和谐的机器人。
【问题讨论】:
-
在您提供的数据示例中,
pm前面有一个空格。 -
pm前的空格其实应该是换行,我会在问题里更新一下
-
试试
data.split(",").map(it => it.trim()).includes(clan) -
它不起作用:(正如我之前提到的,在 pm 之前有一个换行符
-
你能发布
console.log(data)和console.log(clan)的输出吗?
标签: node.js discord discord.js node-modules