Как я могу проверить на наличие персонажа, номер и специальных символов в строке?
-
16-10-2019 - |
Вопрос
Я хочу, чтобы пользователь вводил только номера и символы в Textbox, т.е. без особых чаратеров. Я не хочу использовать событие нажатия клавиши Textbox.
Как мне нужна такая же валидация в Gridview.
Поэтому я хочу проверить целую строку.
Заранее спасибо.
Решение
Используя класс Regex для регулярных выражений, которые вы можете использовать:
If Regex.IsMatch(myString, "^[A-Za-z0-9]+$") Then
'Do stuff
End If
РЕДАКТИРОВАТЬ: Я забыл добавить ^
и $
Чтобы обозначить, что матч должен перейти от начала до конца на строке. Вам также нужно положить \s
там, если пробел разрешено.
Другие советы
Вы можете проанализировать строку, а затем проверить значения ASCII, чтобы убедиться, что они только альфа-цифровые цифры. Вот немного псевдокода:
StrLength = Len(Text)
For x = 1 To StrLength
sChar = Mid$(Text, x, 1)'Gets the x'th charcter in Text
bASCII = Asc(sChar) 'Gets ASCII value of character
if bASCII(not in Range) Then ERROR
Next x
Вот ссылка на значения ASCII:http://www.asciable.com/
Не связан с StackOverflow