为了防止用户输入字母或数字以外的其他内容,我正在使用
ion-item.item-md{
background-color: red;
}
但是,我想防止Concat方法删除空格,并且Concat方法不使用多个参数。有什么建议吗?也许Regex会更聪明?
答案 0 :(得分:4)
空格字符不是字母或数字,因此您需要更改Where
子句,例如:
string.Concat(textbox.Text.Where(c => char.IsLetterOrDigit(c) || c == ' '));
答案 1 :(得分:3)
不是Concat
正在删除空格。 Where
正在删除空格,因为空格既不是字母也不是数字。
您只需要修改Where
:
string.Concat(textbox.Text.Where(x => char.IsLetterOrDigit(x) || char.IsWhiteSpace(x) ));
由于您提到了正则表达式,因此可以使用以下正则表达式:
[^\p{L}\p{Nd}\s]
Regex.Replace
以上带有空字符串,您将得到结果:
Regex.Replace(input, "[^\\p{L}\\p{Nd}\\s]", "")
答案 2 :(得分:1)
是的,您可以使用regex
Regex.Replace(textbox.Text, @"[^a-zA-Z0-9]", "");
答案 3 :(得分:0)
为了防止用户输入字母或数字之外的其他内容,我正在使用...
实际上,您不会阻止用户输入任何内容,而是会转换/过滤用户所做的输入(并删除那里不需要的字符)。从用户的角度来看,这很容易造成混淆,并可能导致不良行为,最好是验证输入并向用户显示一些通知/信息,表明他输入的内容无效。