![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Munya |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.2.2007 Репутация: нет Всего: нет |
Имеем:
поле ввода (input) блок (div) В блоке отображаются имеющиеся наименования (в виде ссылок) При нажатии на один из них он добавляется в поле ввода Задача: При редактировании поля ввода необходимо индицировать в блоке введённые элементы. Что реализовано:
Скрипт:
Собственно проблема: Элементы в форме ввода считаются разделёнными если между ними есть запятая. При этом если элемент такой присутствует в блоке он должен быть отмечен. Например: имеем в форме: super puper, mega super, nike, adidas puma, в блоке: adidas, nike, puma При этом зачеркнут должен быть только nike (слева от него запятая, справа тоже) Adidas не подходит т.к. после него нет запятой, puma - т.к. до неё нет запятой. В моем же примере puma, в следствие регулярного выражения все равно считается верно вписанной. |
||||
|
|||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Надо дальше курить регулярные выражения. там еще есть предпросмотр и постпросмотр
-------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Munya |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.2.2007 Репутация: нет Всего: нет |
leftContext rightContext Имеешь в виду? Хорошо, тогда ворос как организовать анализ посимвольно элементов с конца строки? Допустим я получил строку слева и мне нужно смотреть с конца до первой запятой минуя пробелы., но
говорит undefine |
||||
|
|||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Нет, не так... Раз уж есть регулярки, нужно их мучить ;-)
Вот такая конструевина выводит все элементы из массива вариантов (второй параметр), которые ограничены запятыми или началом-концом строки в строке (первый параметр) -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Munya |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.2.2007 Репутация: нет Всего: нет |
||||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
наверное, я мазохист -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Munya |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.2.2007 Репутация: нет Всего: нет |
Два впроса:
почему здесь необходимо использовать join? Я сам: Ответ: потому, что составляется регулярка с вариантами шаблонов Условие движения по while - это специфика функции exec? (я знаю, что она выполняет поиск совпадения в специфицированной строке. Возвращает результирующий массив.) Это сообщение отредактировал(а) Munya - 1.3.2008, 11:17 |
|||
|
||||
| ksnk |
|
|||
![]() прохожий ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 6855 Регистрация: 13.4.2007 Где: СПб Репутация: 84 Всего: 386 |
Чтобы регулярка поедала только то, что надо. В этом примере получится
Да. exec - примерный аналог preg_match. Прикрутив к регулярке ключик 'g' и используя такой цикл можно превратить ее в аналог preg_match_all -------------------- Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! |
|||
|
||||
| Munya |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 15.2.2007 Репутация: нет Всего: нет |
Все пока получилось, спасибо.
|
|||
|
||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |