2010-10-08 5 views

Antwort

23

Setzen Sie eine i nach dem schließenden Schrägstrich der Regex.

So würde der Code wie folgt aussehen:

if ($(this).attr("href").match(/\.exe$/i)) 
4

Mit /i Modifikator:

if ($(this).attr("href").match(/\.exe$/i)) 
{ 
// do something 
} 
2
if ($(this).attr("href").match(/\.exe$/i)) 
{ 
// do something 
} 
3

Eine andere Möglichkeit wäre, einfach, den Fall zu manipulieren, was Sie wollen.

Es scheint, als ob Sie versuchen, mit Kleinbuchstaben zu vergleichen.

So könnten Sie dies tun:

if ($(this).attr("href").toLowerCase().match(/\.exe$/)) { 
    // do something 
} 

In der Tat, Sie .indexOf() anstelle eines regex verwenden könnte, wenn man wollte.

if ($(this).attr("href").toLowerCase().indexOf('.exe') > -1) { 
    // do something 
} 

Natürlich würde dies auch .exe in der Mitte der Zeichenfolge übereinstimmen, wenn das ein Problem ist.

Schließlich müssen Sie nicht wirklich ein jQuery-Objekt dafür erstellen. Die href Eigenschaft ist direkt von dem Element zugänglich, das durch this dargestellt wird.

if (this.href.toLowerCase().match(/\.exe$/)) { 
    // do something 
}