Например, в моей форме мне нужно будет ввести мое имя в текстовое поле, но когда в текстовом поле или в номере есть специальный символ или номер, появится всплывающее окно с сообщением «Введите правильное имя» после нажатия кнопки ,Как отключить специальные символы и число в текстовом поле?
ответ
Чтобы избежать этого делать неправильно признание, когда кто-то входит символ не-ASCII, но действительное имя (например, 田中 太郎), вам, возможно, придется действительно перечислить вниз специальные символы, которые Вы не хотите включать ,
Но держать его просто, если то, что вы имеете в виду специальные символы все, кроме белого пространства и алфавит, а затем просто использовать встроенную функцию char.IsLetter
и char.IsWhiteSpace
:
if (str.Any(c => !char.IsLetter(c) && !char.IsWhiteSpace(c))){
//invalid
} else {
//valid
}
Если вы хотите проверить некоторый определенный диапазон символов и не другие данные вышеуказанной проверки, просто поставить дополнительную проверку в //invalid
части:
if (str.Any(c => !char.IsLetter(c) && !char.IsWhiteSpace(c))){
//possible invalid
if (some additional character range checking){
//valid case
} else {
//truly invalid
//add as many else if as you want
}
} else {
//valid
}
Как это использовать? например, имя txtbox - FN? – leimelson06
и он говорит) ожидается – leimelson06
@ leimelson06 это должна быть тройная закрывающая скобка ')))' вместо двух '))' теперь это должно быть ОК. Получите 'str' из вашего' TextBox.Text', например: 'string str = textBoxFullName.Text;' или 'string str = FN.Text', затем вы можете применить вышеуказанную проверку. – Ian
Зависит от того, как вы определяете «особый характер». –
все символы, которые не являются A-Z, a-z и пробелом – leimelson06
Что делать, если меня зовут Renée Nyström? Или 田中 太郎? –