Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> поиск подстроки через регулярку в javascript, поиск подстроки 
V
    Опции темы
sanich_
Дата 30.9.2008, 09:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Замучился, помогите разобраться

есть строка
http://site/page.htm?id_razdel=10&page=2
из нее нужно получить
?id_razdel=10
или пусто если нет такой строки

вместо значения 10 может быть любое число,т.е. нужна регулярка на Javascript

Код

var RE= new RegExp("?id_razdel=[0-9]+");
b=RE.exec('http://site/page.htm?id_razdel=10&page=2');
 
 if(b==null) 
  alert ('не найдено');
 else
  alert ('найдено');

//тока здесь еще нужно получить строку "?id_razdel=10", не знаю как



выдает ошибку "Синтаксическая ошибка в шаблоне или строке"


Это сообщение отредактировал(а) sanich_ - 30.9.2008, 09:00
PM MAIL   Вверх
Itsys
Дата 30.9.2008, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

Репутация: 12
Всего: 34



Знак вопроса надо экранировать.... а если этот параметр будет не на первом месте?
Код

var RE= new RegExp("id_razdel=(\d+)\D");
b=RE.exec('http://site/page.htm?id_razdel=10&page=2');
 
 if(b==null) 
  alert ('не найдено');
 else
  alert ('найдено');

//тока здесь еще нужно получить строку "?id_razdel=10", не знаю как

PM MAIL WWW Skype   Вверх
ksnk
Дата 30.9.2008, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Возможно, вот такая регулярка будет более универсальной
Код

var RE= /[\?&]id_razdel=\d+(?:&|$)/;
alert([
  !!RE.exec('http://site/page.htm?id_razdel=10&page=2'),
  !!RE.exec('http://site/page.htm?page=2&id_razdel=10'),
  !!RE.exec('http://site/page.htm?page=2&myid_razdel=10'),
  !!RE.exec('http://site/page.htm?page=2&id_razdel=10x20')
])



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
sanich_
Дата 2.10.2008, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 145
Регистрация: 2.3.2008

Репутация: нет
Всего: нет



Спасибо! Разобрался
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0651 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.