社区
Java SE
帖子详情
输入字符串,只能输入数字,如果输入了字母,如何识别
powerpanda
2003-09-13 10:26:34
输入一系列字符串,只能输入数字,如果输入了字母,如何识别,希望能告诉我方法,谢谢各位了。
...全文
317
17
打赏
收藏
输入字符串,只能输入数字,如果输入了字母,如何识别
输入一系列字符串,只能输入数字,如果输入了字母,如何识别,希望能告诉我方法,谢谢各位了。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
alemjann
2003-09-15
打赏
举报
回复
如果是页面的话
<input type="text" name="yzm" size="6" maxlength="4" class="put" onkeyup='this.value=this.value.replace(/\D/gi,"")'>
swinging
2003-09-15
打赏
举报
回复
to 楼上,
使用异常机制来判断是最差的。
另外,在页面中也是可以使用正则表达式的,直接对<input type='text'>的
onkeypress、onpaste、ondrop三个事件进行过滤来控制输入的字符,通过使用不同
的正则表达式来对不同要求的输入进行控制,比如只输入数字字符,输入浮点型的数据等等。
shipp
2003-09-15
打赏
举报
回复
正则表达式:
/^\d$/ 或者 /^[0-9]$/
flyx
2003-09-14
打赏
举报
回复
注意,要做输入限制必须在Document中处理
如果只监听键盘或者鼠标事件的话,有一些情况如复制不能处理
flyx
2003-09-14
打赏
举报
回复
如下是一个只允许输入整数的例子,如果要求可以输入小数,稍做修改即可
class IntDocument extends PlainDocument {
public void insertString(int offs, String str,AttributeSet attr) throws BadLocationException {
if (str == null || str.trim().length() == 0) return;
boolean insertflag = true;
StringBuffer sb = new StringBuffer(getText(0, getLength()));
sb.insert(offs, str);
try {
Integer.parseInt(sb.toString());
}catch(NumberFormatException ex) {
insertflag = false;
}
if (insertflag)
super.insertString(offs, str, attr);
}
}
JTextField textf = new JTextField();
textf.setDocument(new IntDocument());
pzl686
2003-09-14
打赏
举报
回复
try{
Integer.parserToInt(String value)
}
catch(Exception e)
{
}
如果抛出异常了就说明不是数字
seaman0916
2003-09-14
打赏
举报
回复
如果你是在Appliction或是Applet中的话用 flyx(枫林一笑) 的方法的方法最好!
如果是在Jsp中,你就不必费神了,在DreamWeaver MX中有现成的JavaScript,套用上就行了! 可以再改一下提示信息! 更好一些! "设计"--->"行为"---"检查表单" ......
当然如果你的javaScript比较好,就用 lymkelly(柳叶眉) 的!
我喜欢 DreamWeaver MX ! 方便!
^_^
lymkelly
2003-09-14
打赏
举报
回复
<SCRIPT LANGUAGE="JavaScript">
<!--
function onlyNum(inputStr) {
var flag=true;
for (var i = 0; i < inputStr.length; i++) {
var oneChar = inputStr.charAt(i)
if (oneChar < "0" || oneChar > "9") {
flag=false;
}
}
return flag;
}
//-->
</SCRIPT>
lymkelly
2003-09-14
打赏
举报
回复
判断一下每一个字母>0并且<9
function onlyNum(inputStr) {
var flag=true;
for (var i = 0; i < inputStr.length; i++) {
var oneChar = inputStr.charAt(i)
if (oneChar < "0" || oneChar > "9") {
flag=false;
}
}
return flag;
}
cxyPioneer
2003-09-14
打赏
举报
回复
有一个键盘按下事件,通过查按下键的ascii码的值把非数值排除
miaoliujun
2003-09-14
打赏
举报
回复
同意楼上
Keepers
2003-09-14
打赏
举报
回复
你用Integer.parserToInt(String value)
如果抛出异常了就说明不是数字
反之就是了啊
正则表达太慢了
swinging
2003-09-14
打赏
举报
回复
几个说明:正则表达式处理类Pattern是JDK1.4才有的
(我们要用JDK1.3,不能用,sigh)
另外:
上面的string不能为null,
如果为空字符串(即:"")也会返回true,可以根据需要来判断这种情况是否为真
swinging
2003-09-14
打赏
举报
回复
异常机制是为了捕获异常和错误的,
不是让你们拿来做判断的。
另外,异常机制用来判断,绝对是最慢的,正则表达式才正解。
假设有char a;
要判断它是否为数字,只要:
if(a>='0' && a<='9') {
System.out.println("true");
}else {
System.out.println("false");
}
如果是字符串,可以使用charAt方法遍历该字符串来获得结果,一旦有一个CHAR不为
数字就返回FALSE。
下面是使用正则表达式:
假设有字符串string,
if(Pattern.matches("[0-9]*", string)) {
System.out.println("true");
}else {
System.out.println("false");
}
到底是哪个简单,一目了然了吧。
zhonghua2003
2003-09-14
打赏
举报
回复
可以用正则表达式啊
try{
Integer.parserToInt(String value)
}
catch(Exception e)
{
}
如果抛出异常了就说明不是数字
stonegump
2003-09-14
打赏
举报
回复
可以用正则表达式啊,http://www.computerworld.com.cn 上有一篇文章
Java正则表达式详解
很不错。
hh410
2003-09-13
打赏
举报
回复
呵呵﹐能不能告訴我怎么輸入呀﹐我搞了很久都沒搞好呀﹐我是菜鳥~~
Python 47个字符串方法
# Python 47个字符串方法## 课程介绍同学们是否总是要搜资料、查官网后,才知道怎么操作字符串?如果是,来学学本课程吧,本课程以讲解官网文档的方式,讲解 Python 47个字符串方法,涉及替换、删除、连接、查找、分割、格式化、编码、转换等字符串操作,带同学们系统学习 Python 字符串方法。
统计字符串中
字母
、
数字
、空格和其他字符的个数
循环遍历
输入
字符串
:该函数循环访问
输入
字符串
中的每个字符。该函数接收一个字符串作为参数,请统计该字符串中
字母
、
数字
、空格和其他字符的个数,在main函数调用该函数,分别打印
字母
、
数字
、空格 和。读取和处理用户
输入
(主要功能):在该函数中,声明一个数组来存储用户的
输入
字符串
。计数计算:获取
输入
字符串
后,调用该函数,将
输入
字符串
作为参数传递。统计字符计数:此函数旨在遍历
输入
字符串
并将每个字符分类为以下四个类别之一:
字母
、
数字
、空格等。显示结果:最后,使用 显示
字母
、
数字
、空格和其他字符的计数。
1. 字符统计【问题描述】
输入
字符串
,统计字符串中
字母
(包括大小写)、空格的个数。【
输入
形式】
输入
多个字符串(包括
字母
、空格、
数字
和其他字符),每个字符串为一行。(字符串长度最大不超过1
EOF的判断条件,所以要先对第一个位置上的值进行判断,字符串剩余的部分进行简单的判断,统计,就可以了。这题有特殊说明,没有具体
输入
到底有几个字符串,我们可以使用while(scanf(“%d”,&n)!注意:这种类型的题目
输入
,是
输入
一个字符串,计算其
字母
个数和空格个数并输出。而不是所有字符串
输入
结束,再计算。
输入
多个字符串(包括
字母
、空格、
数字
和其他字符),每个字符串为一行。
输入
字符串
,统计字符串中
字母
(包括大小写)、空格的个数。输出每个字符串的
字母
个数 空格个数(以空格作为分隔符)
C++中
输入
字符串
的几种方法
C++中常见的几种
输入
字符串
的方法如下: cin、cin.get()、cin.getline()、getline()、gets()、getchar() 1. cin>> 用法一:最常用、最基本的用法,
输入
一个
数字
: #include <iostream> using namespace std; main () { int a,b; cin>>a>...
C语言实现
输入
字符串
,统计字符串中
字母
,
数字
,空格,以及其他字符的个数
【代码】C语言实现
输入
字符串
,统计字符串中
字母
,
数字
,空格,以及其他字符的个数。
Java SE
62,614
社区成员
307,327
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章