如何使以下代码不区分大小写?
if ($(this).attr("href").match(/\.exe$/))
{
// do something
}
如何使以下代码不区分大小写?
if ($(this).attr("href").match(/\.exe$/))
{
// do something
}
正则表达式的结束斜线后面加上一个 i
。
那么你的代码应该是这样的:
if ($(this).attr("href").match(/\.exe$/i))
if ($(this).attr("href").match(/\.exe$/i))
{
// do something
}
另一个选择是简单地将大小写转换为您想要的方式。
看起来您正在尝试匹配小写字符。
因此,您可以这样做:
if ($(this).attr("href").toLowerCase().match(/\.exe$/)) {
// do something
}
.indexOf()
代替正则表达式。if ($(this).attr("href").toLowerCase().indexOf('.exe') > -1) {
// do something
}
.exe
。href
属性可以直接从由this
表示的元素访问。if ( this.href.toLowerCase().match(/\.exe$/) ) {
// do something
}
if ($(this).attr("href").match(/\.exe$/i))
{
// do something
}
match()
函数不同,test()
函数返回true
或false
,通常在测试正则表达式是否匹配时使用。 大小写不敏感的匹配可以在两个函数中使用/i
修饰符。test()
与/i
的示例:const link = $('a').first();
if (/\.exe$/i.test(link.attr('href')))
$('output').text('The link is evil.');
https://example.com/evil.exe?x=5
test()
的文档: