Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проверка корректности названия / 3 сообщений из 3, страница 1 из 1
08.04.2005, 10:44:49
    #33004178
Va1entin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка корректности названия
Привет!

Для проверки корректности названий
надо найти функцию.
Что-то вроде isalphanumeric.
Можно стандартную функцию VB6 или
функцию из dll WinApi.

Может кто знает...
Заранее спасибо.
...
Рейтинг: 0 / 0
08.04.2005, 12:18:15
    #33004507
PA
PA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка корректности названия
Код: plaintext
1.
2.
3.
4.
5.
Function IsAlphaNumeric(ByVal strTest As String) As Boolean
    With New RegExp
        .Pattern = "[^\w\sА-яЁё]"
        IsAlphaNumeric = Not .test(strTest)
    End With
End Function

В проект включить ссылку на Microsoft VBScript Regular Expressions 5.5
...
Рейтинг: 0 / 0
08.04.2005, 15:46:46
    #33005429
Va1entin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка корректности названия
Спасибо за наводку.
Сделал по аналогии.
Во вспомогательной функции IsAlpha правда есть
небуквенные значения, но главное что работает!

Код: 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.
Function IsAlpha(ByVal symbol As String) As Boolean
    Dim Expr1, Expr2, Expr3, Expr4, Expr5, Expr6 As Boolean

    Expr1 = (Asc(symbol) >= Asc("А") And Asc(symbol) <= Asc("Я"))
    Expr2 = (Asc(symbol) >= Asc("а") And Asc(symbol) <= Asc("я"))
    Expr3 = (symbol = "?") Or (symbol = "?")
    Expr4 = (Asc(symbol) >= Asc(",") And Asc(symbol) <= Asc("/"))
    Expr5 = (symbol = "\")
    Expr6 = Expr1 Or Expr2 Or Expr3 Or Expr4 Or Expr5

    If Expr6 Then
        IsAlpha = True
    Else
        IsAlpha = False
    End If
End Function

Function IsAlphaNumeric(ByVal strTest As String) As Boolean
    Dim res As Boolean
    Dim symbol As String
    Dim i As Integer

    res = IsAlpha(Mid(strTest,  1 ,  1 ))
    For i =  2  To Len(strTest)
        symbol = Mid(strTest, i,  1 )
        res = res And (IsAlpha(symbol) Or IsNumeric(symbol))
    Next
    IsAlphaNumeric = res
End Function
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проверка корректности названия / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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