2010-10-08 37 views

Trả lời

23

Đặt i sau dấu gạch chéo đóng của regex.

Vì vậy, mã của bạn sẽ trông như thế này:

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

Với /i modifier:

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

Một lựa chọn khác sẽ được chỉ đơn giản là thao tác các trường hợp với những gì bạn muốn.

Dường như bạn đang cố gắng khớp với các ký tự chữ thường.

Vì vậy, bạn có thể làm điều này:

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

Trong thực tế, bạn có thể sử dụng .indexOf() thay vì một regex nếu bạn muốn.

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

Tất nhiên, điều này cũng khớp với số .exe ở giữa chuỗi, nếu đó là vấn đề.

Cuối cùng, bạn không thực sự cần phải tạo một đối tượng jQuery cho việc này. Các tài sản href có thể truy cập trực tiếp từ các yếu tố đại diện bởi this.

if (this.href.toLowerCase().match(/\.exe$/)) { 
    // do something 
} 
Các vấn đề liên quan