db.collection("accounts").findOne({Nickname: { $regex : new RegExp(player, "i") }}, function(err, result) { }
我目前拥有的,问题是我得到的是播放器变量的子串。但我只想要精确的,尽管不区分大小写的匹配。
答案 0 :(得分:1)
前缀player
带^和后缀带$,以便它匹配整个字符串
"^" + player + "$"
^匹配字符串的开头
$匹配字符串的结尾
的参考所以使用这个表达式,你会说“找到以这个字符串开头和结尾的昵称”,即整个字符串
答案 1 :(得分:0)
你的正则表达式实际上要求一个子字符串。要求一个确切的字符串:
new RegExp("^" + player + "$", "i")
(保持其他一切都一样。)
^
匹配输入的开头,$
匹配结尾。这样,任何子字符串都不匹配。