Я добавляю поиск типа head. Everithing работает, но я нашел одну проблему. У меня есть текст в моем json например «Привет, меня зовут Джейсон (Mckay) и ...»
когда я пытаюсь ввести некоторые слова из этой строки everithin это нормально, но когда я типа„(“или„)“Я есть исключение:
Typeahead Invalid regular expression:/(/:
Uncaught SyntaxError: Invalid regular expression: /(/: Unterminated group
я был смотреть в машинописный «Основы» и имеют ту же ошибку:
https://twitter.github.io/typeahead.js/examples/#prefetch
То же самое, когда я буду пытаться ввести любые nubmers первый «1», «2» и т.д. ...
Вот мой умолчанию substringMatcher, где проблема:
var substringMatcher = function(strs) {
return function findMatches(q, cb) {
var matches, substringRegex;
// an array that will be populated with substring matches
matches = [];
// regex used to determine if a string contains the substring `q`
substrRegex = new RegExp(q, 'i');
// iterate through the pool of strings and for any string that
// contains the substring 'q', add it to the 'matches' array
$.each(strs, function(i, str) {
if (substrRegex.test(str)) {
matches.push(str);
}
});
cb(matches);
};
};
' ('и многие другие символы имеют« специальное »значение в RegExp - см. [документация] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/RegExp#Special_characters_meaning_in_regular_expressions) –
Я знаю, так что любое предложение, как решить это? – jason
, если вы знаете о специальных символах в выражениях RegExp, то вы знаете, что специальный символ \ делает –