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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Синтаксический анализатор регулярных выражений 
:(
    Опции темы
introtel
Дата 2.6.2009, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Как можно в Javascript проверить правильно ли составлено регулярное выражение синтаксически. например отсутсвие [9-1] range-ов...и т.д. ведь по науке это возможно....

Заранее благодарю за ответ

Это сообщение отредактировал(а) introtel - 2.6.2009, 09:13
PM MAIL   Вверх
ksnk
Дата 2.6.2009, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



Запустить его в try-catch блоке и проверить возвращаемую ошибку.

Какая "глобальная цель" этой проверки? Для чего оно нужно?

Это сообщение отредактировал(а) ksnk - 2.6.2009, 11:53


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


Новичок



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

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



цель...ну предположим вводит кто-то регексп....надо проверить он правильно создан или нет...как его запустит?? мне не нужно проверять  соответсвует ли он какому-то выражению
PM MAIL   Вверх
ksnk
Дата 2.6.2009, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


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


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

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



А нечего вводить кому-то какой-то регексп.  smile  Оно ему не  нужно
Код

Код

<label>рег <input type="text" id="reg" ></label>
<label>Текст<input type="text" id="test" ></label><br>
<button onclick=" checkReg(document.getElementById('reg'));">check</button>
<button onclick=" testReg(document.getElementById('reg'),document.getElementById('test'));">test</button>
<script>
function checkReg(el){
 try {

  var reg=new RegExp(el.value);
  reg.compile();
  alert('Ай маладец!');
} catch(e) {
  alert('Ашипка:' + e)
}

}
function testReg(el,val){
 try {
  var reg=new RegExp(el.value);
 // reg.compile();
  var m=reg.exec(val.value);
var 
s = "$0 = '" + RegExp.input + "' ";
s += "$1 = '" + RegExp.$1 + "' ";
s += "$2 = '" + RegExp.$2 + "' ";
s += "$3 = '" + RegExp.$3 + "'";

  alert(s || m);
} catch(e) {
  alert('Ашипка:' + e)
}

}
</script>





--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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