2010-10-08 13 views

Odpowiedz

23

Umieść i po zamykającym ukośniku wyrażeń regularnych.

Tak Twój kod będzie wyglądać następująco:

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

Z /i modyfikatora:

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

Innym rozwiązaniem byłoby po prostu manipulować sprawę, co chcesz.

Wygląda na to, że starasz się dopasować do małych liter.

Więc można to zrobić:

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

W rzeczywistości, można użyć .indexOf() zamiast regex jeśli chciałeś.

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

Oczywiście, byłoby to pasuje .exe w środku łańcucha, a także, jeśli jest to problemem.

Wreszcie nie trzeba do tego celu utworzyć obiektu jQuery. Właściwość href jest dostępna bezpośrednio z elementu reprezentowanego przez this.

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