проверка синтаксиса url

Программирование на Active Server Pages и VBScript.
SAS
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 101
Зарегистрирован: 21.06.2005 (Вт) 0:30
Откуда: Петропавловск-Камчатский

проверка синтаксиса url

Сообщение SAS » 29.06.2005 (Ср) 7:44

Никто не может подкинуть код на vb для чисто синтаксической проверки адреса http:// , ftp:// , file:// (проверка чисто на синтаксис, без проверки существования адреса)

OldRunaways
Новичок
Новичок
Аватара пользователя
 
Сообщения: 44
Зарегистрирован: 10.07.2004 (Сб) 17:13

Сообщение OldRunaways » 30.06.2005 (Чт) 9:59

Хм..., а чего тут так тихо (риторический вопрос)? Неужели все на ПХП перебрались, а про АСП забыли? ...непорядок, но вернёмся к теме ;-)

В данном случае стоит провереть наличие в начале урл указателя на протокол:
Код: Выделить всё
if left (UrlName, 7) = "http://" Or left (UrlName, 7) = "ftp://" Or left (UrlName, 7) = "file://" then

Ну и провереть на допустимость символов:
Код: Выделить всё
For i = 1 To Len(UrlName)
  intChar=Asc(Mid(UrlName, i, 1))
  If (intChar > 47 And intChar < 58) Or _
     (intChar > 63 And intChar < 91) Or _
     (intChar > 96 And intChar < 123) Or _

...и т.д..... перебираем все необходимые символы.

Рома
Начинающий
Начинающий
 
Сообщения: 11
Зарегистрирован: 28.10.2005 (Пт) 16:04

Сообщение Рома » 28.10.2005 (Пт) 19:15

А не проще просто RegExp юзать? =)

Код: Выделить всё
Dim RegEx
Dim strToCheck
strToCheck = "http://www.url.ru" ' строка для проверки
Set RegEx = New RegExp
RegEx.Pattern = "[^A-za-z\x.\x//\x:\x@]"
RegEx.Global = True
strToCheck = RegEx.Replace(strToCheck,"")
' alternative way for error handle
' result = RegEx.Test(strToCheck) ' true OR false


Вернуться в ASP и VBScript

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12

    TopList