Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.06.2016, 14:45
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

Поиск и data.json (key insensitive)
У меня в data.json есть вот такая запись
{"name":"Frédérique", "id":"123456789"}

Когда ввожу в поле поиска fr то мне спокойно выводит его имя и айди.
Но если я хочу вместо fré ввести fre то мне ничего не показывает.

Как мне поиграть с этим? Что посоветуете?
Ответить с цитированием
  #2 (permalink)  
Старый 28.06.2016, 15:00
Кандидат Javascript-наук
Отправить личное сообщение для yazonnile Посмотреть профиль Найти все сообщения от yazonnile
 
Регистрация: 25.05.2012
Сообщений: 133

заменять строку fre на регулярку, где символы e,u,o и тд будут меняться на наборы символов.
И соотв искать по регулярке
Ответить с цитированием
  #3 (permalink)  
Старый 28.06.2016, 16:13
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

Да, тоже подумал про регулярку, но хочу попробовать так что если находит é или è то автоматом реплейсит в точку, так будет находит всё.
Ответить с цитированием
  #4 (permalink)  
Старый 28.06.2016, 17:19
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

C точкой не катит, находит даже согласные буквы, что не есть ок.
Буду тыкать дальше
Ответить с цитированием
  #5 (permalink)  
Старый 29.06.2016, 02:45
Кандидат Javascript-наук
Отправить личное сообщение для yazonnile Посмотреть профиль Найти все сообщения от yazonnile
 
Регистрация: 25.05.2012
Сообщений: 133

Не понимаю что там тыкать. Вроде описал уже алгоритм
Ответить с цитированием
  #6 (permalink)  
Старый 29.06.2016, 08:00
Аватар для dd_smol
Кандидат Javascript-наук
Отправить личное сообщение для dd_smol Посмотреть профиль Найти все сообщения от dd_smol
 
Регистрация: 08.03.2015
Сообщений: 131

https://learn.javascript.ru/regexp-c...ets-and-ranges
Ответить с цитированием
  #7 (permalink)  
Старый 29.06.2016, 14:21
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

Хорошо, здесь кроется баг.
Возьмем то что у нас есть такие имена:
Frederique, Fréderique, Frèderique
Когда я ввожу в поиске fre мне автоматом должны показываться эти три имени.
Вот как мне это сделать?
$('#SMPsearch').keyup(function() {
		// value of search field
		var a = $('#SMPsearch').val();
		var searchField = a.replace(/[e]/gi, '.');//вот он
		console.log(searchField);

код код код


Как сделать что бы вместо точки он искал e, é, è ?
Как это выглядит?
Ответить с цитированием
  #8 (permalink)  
Старый 29.06.2016, 14:25
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

Всё, решил, получилось.
Фак
var searchField = a.replace(/[e]/gi, '[e,é,è]'); // правильно

Спасибо!
Ответить с цитированием
  #9 (permalink)  
Старый 29.06.2016, 14:36
Аватар для jack3dm
Аспирант
Отправить личное сообщение для jack3dm Посмотреть профиль Найти все сообщения от jack3dm
 
Регистрация: 05.04.2015
Сообщений: 52

В конечном итоге у меня код получился так.
Работает без проблем.
Спасибо всем.

// value of search field
		var a = $('#SMPsearch').val();
		var searchField = a.replace(/[a]/gi, '[a,à,á,â,ä,å,ą]').replace(/[e]/gi, '[e,è,é,ê,ë,ę]').replace(/[i]/gi, '[i,ì,í,î,ï]').replace(/[o]/gi, '[o,ö,ô,ò,ó]').replace(/[u]/gi, '[u,û,ù,ú,ü]').replace(/[c]/gi, '[c,ç,ć]').replace(/[l]/gi, '[l,ł]').replace(/[n]/gi, '[n,ñ,ń]').replace(/[s]/gi, '[s,š,ś]').replace(/[y]/gi, '[y,ÿ]').replace(/[z]/gi, '[z,ž,ź,ż]');
		console.log(searchField);
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Jin: И снова о наследовании tenshi Ваши сайты и скрипты 16 19.08.2013 20:30
Борьба с Object.defineProperty в IE8 FINoM Оффтопик 46 04.09.2012 23:45
Идентификация пользователя и бан по ID Jason Bourne Общие вопросы Javascript 8 08.03.2012 06:12
Object.predefinedProperties создает новый объект с назначенными getter'ами/setter'ами devote Ваши сайты и скрипты 13 06.03.2012 21:57
своё замыкание каждому объекту. cainrus Общие вопросы Javascript 40 25.10.2010 13:57