包含不区分大小写的内容
2022-08-29 23:10:37
我有以下几点:
if (referrer.indexOf("Ral") == -1) { ... }
我喜欢做的是使大小写不敏感,以便它可以是 ,,等并且仍然匹配。Ral
RAl
rAl
有没有办法说它必须不区分大小写?Ral
我有以下几点:
if (referrer.indexOf("Ral") == -1) { ... }
我喜欢做的是使大小写不敏感,以便它可以是 ,,等并且仍然匹配。Ral
RAl
rAl
有没有办法说它必须不区分大小写?Ral
在 之后添加 。此方法将字符串转换为大写字符串。然后,使用 using 代替 。.toUpperCase()
referrer
.indexOf()
RAL
Ral
if (referrer.toUpperCase().indexOf("RAL") === -1) {
使用正则表达式也可以实现相同的功能(当您想要针对动态模式进行测试时尤其有用):
if (!/Ral/i.test(referrer)) {
// ^i = Ignore case flag for RegExp
另一个选项是使用搜索方法,如下所示:
if (referrer.search(new RegExp("Ral", "i")) == -1) { ...
它看起来更优雅,然后将整个字符串转换为小写,并且可能更有效。
对于代码,对字符串进行两次传递,一次传递是在整个字符串上将其转换为小写,另一次传递是查找所需的索引。
使用代码对字符串进行一次传递,它看起来与所需的索引匹配。toLowerCase()
RegExp
因此,在长字符串上,我建议使用该版本(我猜在短字符串上,这种效率来自创建对象的原因)RegExp
RegExp