Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / не могу понять поведение объекта RegExp (Jscript) / 4 сообщений из 4, страница 1 из 1
07.11.2008, 09:50
    #35639184
u78
u78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять поведение объекта RegExp (Jscript)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
<html>
<script>
function TestRegExp()
	{
		var s = str.value;
		if(UseFixed.checked){
			//var re=\(\w+)(\w+)(\.csp)\
			var varvar="\w+/\w+\.csp";
			var re = new RegExp(varvar, "i");
			}
		else{var re = new RegExp(reg.value, "i");}
		var result = re.test(s) ? " TRUE " : " FALSE ";
		Answer.innerText=result;
	}
</script>
<body>
<table><tr>
	<td>Строка которую парсим:	
	<td><input type="text" id="str" value="localhost/csp/ptk/main.csp">
<tr>
	<td>Регулярное выражение
	<td><input type="text" id="reg" value="\w+/\w+\.csp">
                   Регулярное выражение брать из переменной: <input type="checkbox" id="UseFixed">
<tr>
	<td colspan="2"><input type="button" onclick="TestRegExp();" value="проверить">
<tr>
	<td id="Answer" colspan= 2 > 
</table>
</body>
</html>

Нужно: необходимо удостовериться что строка отвечает шаблону [каталог]/[файл].csp

Как делаю: на странице два текстовых поля - строка которую надо парсить, и собственно шаблон для RegExp, отмеченный чекбокс говорит что шаблон для RexExp надо брать из переменной (varvar), а не из поля. Кнопка ПРОВЕРИТЬ сверяет строку которую надо парсить с шаблоном (либо из текстового поля, либо из переменной в коде) и выводить результат под собой: слово TRUE или FALSE.

Вопрос: Почему один и тот же шаблон в текстовом поле и в переменной - после проверки даёт разные результаты? В случае когда этот шаблон берётся из текстового поля - ответ TRUE, а когда из переменной - ответ FALSE.
...
Рейтинг: 0 / 0
07.11.2008, 10:14
    #35639258
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять поведение объекта RegExp (Jscript)
Код: plaintext
var varvar = "\\w+/\\w+\\.csp";
...
Рейтинг: 0 / 0
07.11.2008, 10:16
    #35639264
illion
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять поведение объекта RegExp (Jscript)
но вообще-то если шаблон фиксирован, то проще написать
Код: plaintext
var re = /\w+\/\w+\.csp/i;
...
Рейтинг: 0 / 0
07.11.2008, 10:30
    #35639322
u78
u78
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не могу понять поведение объекта RegExp (Jscript)
спасибо
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / не могу понять поведение объекта RegExp (Jscript) / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]