2015-05-25 3 views
-2

Это код, который я получил в stackoverflow, также , но я хочу улучшить его, чтобы сделать чувствительным к регистру , или мне нужно изменить \\b, потому что я думаю, что это символ соответствия , Что мне делать?Как фильтровать, но не чувствителен к регистру с помощью regexp на javascript

function filter() { 
    var regex = new RegExp('\\b' + this.value); 
    var $els = $lbs.filter(function() { 
     return regex.test($(this).text()); 
    }); 
    $lbs.not($els).hide().prev().hide(); 
    $els.show().prev().show(); 
}; 

input.keyup(filter).change(filter); 
+2

Что вы должны сделать, это прочитать инструкцию. Начните с 'RegExp'. –

+0

Например, см. Https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/RegExp#Parameters. –

ответ

1

Для регистронезависимого поиска, вам нужно иметь модификатор i.

Изменить

var regex = new RegExp('\\b' + this.value); 

в

var regex = new RegExp('\\b' + this.value, "i");//Added i 
+1

Я предлагаю избегать 'this.value' ..' RegExp.escape = function (s) { return s.replace (/ [- \/\\^$ * + ?.() | [\] {}]/g, '\\ $ &'); }; 'должен помочь. Тогда вы можете сделать' RegExp.escape (this.value) ' – Anirudha

+0

спасибо за ответ sir ... но я не могу проголосовать за ваш ответ, потому что у меня нет достаточной репутации .. еще раз спасибо ... надеюсь, я тоже могу помочь –

Смежные вопросы