免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 10366 | 回复: 9
打印 上一主题 下一主题

如何判断一个字符串是否是数字 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-04-01 22:21 |只看该作者 |倒序浏览
我想判断一个字符串是否是数字如何判断?
例如
字符串
aaa = "123456"
bbb = "dd1233"
ccc  = " 112  34"
我如何判断aaa是数字
bbb (有字母),ccc(有空格) 不是数字,帮忙指点一下

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2005-04-01 22:28 |只看该作者

如何判断一个字符串是否是数字

/\<[0-9].*\>/

论坛徽章:
0
3 [报告]
发表于 2005-04-01 23:43 |只看该作者

如何判断一个字符串是否是数字

/\<[0-9].*\>/
不对吧
/\<[0-9]+\>/

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
4 [报告]
发表于 2005-04-01 23:56 |只看该作者

如何判断一个字符串是否是数字

test:

  1. read;echo $REPLY|awk '{print($0~/^([0-9])+$/)?"digit":"string"}'
复制代码

论坛徽章:
0
5 [报告]
发表于 2005-04-02 09:06 |只看该作者

如何判断一个字符串是否是数字

如果我数字中可以有逗号
例如1,234,456这也属于数字,我该怎么判断呢

论坛徽章:
0
6 [报告]
发表于 2005-04-02 11:55 |只看该作者

如何判断一个字符串是否是数字

简单一点去掉分隔符,如都是这种数字,可以

  1. read -p"input:";echo $REPLY|awk '{print($0~/^[+-]?[0-9]?[0-9]?[0-9]?(,[0-9][0-9][0-9])*(\.[0-9]*)?$/)?"digit":"string"}'
复制代码


测试
input:-0.12
digit
input:-.12
digit
input:-1,123,444.1
digit
input:1234,555,555
string

论坛徽章:
0
7 [报告]
发表于 2005-04-02 15:51 |只看该作者

如何判断一个字符串是否是数字

  1. #!/bin/ksh -p
  2. if [[ $1== +([0-9]) || $1 == [1-9]?([0-9])?([0-9])*(,[0-9][0-9][0-9]) ]]
  3. then
  4.     echo $1 is a valid number
  5. else
  6.     echo $1 is not a valid number
  7. fi
复制代码

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
8 [报告]
发表于 2005-04-02 19:07 |只看该作者

如何判断一个字符串是否是数字

echo $aaa | grep -q '[^0-9,]' && echo -n "non-"; echo digit

论坛徽章:
0
9 [报告]
发表于 2005-04-02 19:11 |只看该作者

如何判断一个字符串是否是数字

[quote]原帖由 "網中人"]&& echo -n "non-"; echo digit[/quote 发表:


如果aaa=",,,,"     那就不行了

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
10 [报告]
发表于 2005-04-02 19:27 |只看该作者

如何判断一个字符串是否是数字

哦. 那再來:
[ -z "${aaa//,}" ] || echo $aaa | grep -q '[^0-9,]' && echo -n "non-"; echo digit

不過, 這並沒有照顧到如下或其變種:
1,20
1,2000
1,,200
也沒考慮小數或負數~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP