alex33
Скриптер
- Сообщения
- 1,457
- Репутация
- 186
Допустим вы в окне InputBox запрашиваете у пользователя IP-адрес,
и этот IP-адрес вам надо проверить,
вдруг пользователь ввёл 123.456.789.200 или 1.5.88.15.7.8.4
С помощью этой функции вы можете проверить корректность введённого IP.
ValidIP ( IPAddress )
параметры
IPAddress строка которую требуется проверить.
Возвращаемые значения
1 IP-адрес введён верно
0 IP-адрес введён не верно
@error содержит код ошибки или 0 если ошибок нет.
ValidIP("127.0.0.1") ; вернёт 1
ValidIP("327.0.0.1") ; вернёт 0
ValidIP("127001") ; вернёт 0
ValidIP("abcde") ; вернёт 0
и так далее.
и этот IP-адрес вам надо проверить,
вдруг пользователь ввёл 123.456.789.200 или 1.5.88.15.7.8.4
С помощью этой функции вы можете проверить корректность введённого IP.
Код:
;========== Function ==========;
Func ValidIP($vd_IP)
Local $vd_c, $vd_code
$vd_a = StringSplit($vd_IP, ".")
$vd_c = 1
$vd_code = 0
While $vd_c <= $vd_a[0]
If $vd_a[0] = 4 And StringLen($vd_IP) >= 7 And StringLen($vd_IP) <= 15 _
And StringIsDigit($vd_a[$vd_c]) And $vd_a[$vd_c] <= 255 Then
If $vd_code = 0 Then $vd_code = 0
Else
$vd_code = $vd_code + 1
EndIf
$vd_c = $vd_c + 1
WEnd
If $vd_code = 0 Then
Return 1
Else
Return 0
EndIf
SetError($vd_code)
EndFunc
;========== EndFunction ==========;
;===== Example =====;
While 1
$MyInput = InputBox("Validation IP", "Enter IP-address", @IPAddress1)
If @error Then Exit
If ValidIP($MyInput) Then
MsgBox(64, "Validation IP", "Valid ok", 0)
ExitLoop
else
MsgBox(16, "Validation IP", "Valid error", 30)
EndIf
WEnd
;===== EndExample =====;
параметры
IPAddress строка которую требуется проверить.
Возвращаемые значения
1 IP-адрес введён верно
0 IP-адрес введён не верно
@error содержит код ошибки или 0 если ошибок нет.
ValidIP("127.0.0.1") ; вернёт 1
ValidIP("327.0.0.1") ; вернёт 0
ValidIP("127001") ; вернёт 0
ValidIP("abcde") ; вернёт 0
и так далее.