C# 如何使用正则表达式限制文本框文本长度仅为9位数 字符串模式=@“^[0-9]{0,9}$” 返回Regex.IsMatch(输入,regFormat) 我在keydown事件中使用上述模式,请帮助我如何使用regex验证我的textbox.textlength最多9个数字,并且只接受数字而不接受字符串
如果希望正则表达式限制为9个字符,可以使用大括号,即C# 如何使用正则表达式限制文本框文本长度仅为9位数 字符串模式=@“^[0-9]{0,9}$” 返回Regex.IsMatch(输入,regFormat) 我在keydown事件中使用上述模式,请帮助我如何使用regex验证我的textbox.textlength最多9个数字,并且只接受数字而不接受字符串,c#,winforms,C#,Winforms,如果希望正则表达式限制为9个字符,可以使用大括号,即 /^[0-9]{0,9}$/ 要使文本框仅包含9个字符,可以指定其MaxLength属性: myTextBox.MaxLength = 9; 然后,如果您只希望用户能够输入数字,请处理TextChanged事件: myTextBox_TextChanged(object sender, EventArgs e) { if (Regex.IsMatch("[^0-9]",myTextBox.Text) myTextB
/^[0-9]{0,9}$/
要使
文本框仅包含9个字符,可以指定其MaxLength
属性:
myTextBox.MaxLength = 9;
然后,如果您只希望用户能够输入数字,请处理TextChanged
事件:
myTextBox_TextChanged(object sender, EventArgs e)
{
if (Regex.IsMatch("[^0-9]",myTextBox.Text)
myTextBox.Text.Remove(myTextBox.Length - 1);
}
这将检查文本框的最后一个字符是否不是数字,如果不是数字,则将其删除。没有正则表达式,我找到了解决此问题的方法。下面的代码在我的按键事件中非常有效
else if (!(e.KeyValue >= 48 && e.KeyValue <= 57) || textBox1.Text.Length == 9)
{
e.SuppressKeyPress = !(e.KeyCode == Keys.Back || e.KeyCode == Keys.Left || e.KeyCode == Keys.Right);
}
else如果(!(e.KeyValue>=48&&e.KeyValue)我只从文本框中输入数字,希望用户只输入9位数字。请与我分享keydown事件的全部代码谢谢Scotty您也可以使用屏蔽文本框进行此操作。