如何检测文本框内输入的是数字

rack79 2005-01-28 01:31:23
如何检测文本框内输入的是数字
...全文
401 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
echoxue 2005-01-31
  • 打赏
  • 举报
回复
IsNumeric()
yu_cra 2005-01-31
  • 打赏
  • 举报
回复
那位大哥能说说正则表达式的写法
vo__ov 2005-01-30
  • 打赏
  • 举报
回复
用IsNumeric()检测就行了
gyf19 2005-01-29
  • 打赏
  • 举报
回复
用正则表达式
xx_rj 2005-01-29
  • 打赏
  • 举报
回复
正则的写法:([-+]?[0-9]+\.?[0-9]+)
xx_rj 2005-01-29
  • 打赏
  • 举报
回复
用isnumeric函数就行了。不用那么麻烦吧,比较复杂的过滤才用到正则吧。
hks_skh 2005-01-29
  • 打赏
  • 举报
回复
js
tangltangd 2005-01-28
  • 打赏
  • 举报
回复
如果是B/S的就可以用验证控件,写正则表达式
如果是C/S的就更容易了,可以用KeyPress事件
LoveCherry 2005-01-28
  • 打赏
  • 举报
回复
用服务器断的try非常慢
karykwan 2005-01-28
  • 打赏
  • 举报
回复
using System;

public class IsNumberSample {
public static void Main() {
string str = "non-numeric";

Console.WriteLine(Char.IsNumber('8')); // Output: "True"
Console.WriteLine(Char.IsNumber(str, 3)); // Output: "False"
}
}
AllenTing 2005-01-28
  • 打赏
  • 举报
回复
用isnumeric,尽量不要用try catch,那是很耗资源的
Brunhild 2005-01-28
  • 打赏
  • 举报
回复
用正则表达式或IsNumeric()
pts_ben 2005-01-28
  • 打赏
  • 举报
回复
利用try……catch……
如:
int n=0;
try
{
int m = int.parse(TextBox1.Text);
}
catch
{
n=1;
}
if(n == 1)
{
//不是数字
}
else
{
//是数字
}
lang_csdn 2005-01-28
  • 打赏
  • 举报
回复
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
If e.KeyChar Like "[0-9]" Then
Else
MsgBox("不是数字!")
e.Handled = True
End If
End Sub
wangfub 2005-01-28
  • 打赏
  • 举报
回复
用CINT 或CDBL加错误捕获不好吗??
jsjzzh 2005-01-28
  • 打赏
  • 举报
回复
我感觉这个问题有两个意思。
一个是已经输入完成的textbox的内容是不是全是数字:可以用isNumeric(textbox.text)来判断。
二是在输入的同时判断是不是数字:这需要有textbox的keypress的事件进行处理
if(e.KeyChar>='0' && e.KeyChar<='9')
e.Handled=false;
else
e.Handled=true;
endif
使用输入非数值时句柄返回假,有时还要对小数点进行判断。


LiloZhu 2005-01-28
  • 打赏
  • 举报
回复
示例1:用數組來實現
(VB.Net 部分)
Private istg_char() As Char = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"} ' 定義一個數組

Dim istg_check_char as string
istg_check_char=Text1.Text.Trim(Me.istg_char)
If istg_check_char="" then
Messagebox.show("為數字型")
else
Messagebox.show("為字符串")
End If

(C# 部分)
char[] number=new char(10){'0','1','2','3','4','5','6','7','8','9'};

strng check=textbox1.text.trim(number);
if(check= ="")
{
MessageBox.Show("為數字型");
}
Else
{
Messagebox.show("為字符串");
}

rack79 2005-01-28
  • 打赏
  • 举报
回复
用VB。NET表达,只要最后判断一下文本框内的内容是不是数字就行了
debut 2005-01-28
  • 打赏
  • 举报
回复
private void btnIPTxtKeyPress(object sender,System.Windows.Forms.KeyPressEventArgs e)
{
if(e.KeyChar>='0' && e.KeyChar<='9')
e.Handled=false;
else
e.Handled=true;
}
这样可以限定它只输入数字
private bool isNumeric(string str)
{
for(int i=0;i<str.Length;i++)
if(str[i]<'0' || str[i]>'9')
return false;
return true;
}
这样可以判断一个字符串是不是一个数字,可以放在TextChanged事件里面
javaOrnet 2005-01-28
  • 打赏
  • 举报
回复
用正则表达式
加载更多回复(2)

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧