【发布时间】:2018-10-09 16:50:06
【问题描述】:
在我的项目中,我需要注意不区分大小写,我不知道如何在 JavaScript 中编写类似的代码。
如果我在终端上写,我需要让我的代码理解同样的事情:
`BOB
bob
Bob`
我的代码:
#!/usr/bin/env node
let chunk = "";
process.stdin.on("data", data => {
chunk += data.toString();
});
process.stdin.on("end", () => {
chunk.replace(/^\s*[\r\n]/gm,"").split(/\s+/).ignoreCase.forEach(function (s) {
process.stdout.write(
s === 'bob'
? 'boy \n'
: s === 'alicia'
? 'girl\n'
: s === 'cookie'
? 'dog \n'
: 'unknown \n');
});
});
我需要显示的结果是:
`boy
boy
boy`
我尝试用ignoreCase 来做,但它不起作用,你能解释一下为什么吗?
【问题讨论】:
-
使用 toLowerCase 方法将输入更改为小写
-
.ignoreCase不起作用,因为没有这样的东西;你刚发明的吗?您可以将字符串全部转换为大写或小写,然后进行比较。 -
你同学在这里先问stackoverflow.com/questions/52724411/…8)
-
ignoreCase是正则表达式上的一个方法。您不能将其应用于您正在迭代的字符串集合。 -
@mplungjan 如果您不介意,我想了解更多信息?