В моем проекте мне нужно позаботиться о нечувствительности к регистру, и я не знаю, как я могу написать что-то подобное в 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
, но это не работает, можете ли вы объяснить мне, почему?
.ignoreCase
не работает, потому что такого нет; ты только что придумал? Вы можете преобразовать строки в верхний или нижний регистр и после этого сравнить. - person Pointy   schedule 09.10.2018ignoreCase
– это метод Регулярных выражений. Вы не можете применить его к коллекциям строк, которые вы повторяете. - person meagar   schedule 09.10.2018.ignoreCase
, скорее всего, это пользовательская функция, которую вы видели, а не встроенная функция. - person Scott Marcus   schedule 09.10.2018