Shell中判断字符串是否为数字的6种方法
Shell中判断字符串是否为数字的6种方法
#!/bin/bash # 方法1
a=1234;echo "$a"|[ -n "`sed -n '/^[0-9][0-9]*$/p'`" ] && echo string a is numbers
第一个-n是shell的测试标志,对后面的串"`sed -n '/^[0-9][0-9]*$/p'`" 进行测试,如果非空,则结果为真。sed默认会显示所有输入行信息的,sed 的“-n”选项是让sed不要显示,而只显示我们所需要的内容:即后面的表达式所匹配的行,这是通过表达式中加入“p”命令来实现的。/^[0-9][0-9]*$/他的含义是匹配至少由一位数字构成的行
# 方法2, 可以,不过不是bash实现的,是使用了grep的正则
if grep '^[[:digit:]]*$' <<< "$1";then echo "$1 is number."
else echo 'no.'
fi
# 方法3
if [ "$1" -gt 0 ] 2>/dev/null ;then echo "$1 is number."
else echo 'no.'
fi
# 方法4,case
case "$1" in [1-9][0-9]*) echo "$1 is number." ;; *) ;;
esac
# 方法5,awk
echo $1| awk '{print($0~/^[-]?([0-9])+[.]?([0-9])+$/)?"number":"string"}' # 方法5,awk
if [ -n "$(echo $1| sed -n "/^[0-9]\+$/p")" ];then echo "$1 is number."
else echo 'no.'
fi
# 方法6,expr
expr $1 "+" 10 &> /dev/null
if [ $? -eq 0 ];thenecho "$1 is number"
elseecho "$1 not number"
fi
Shell中判断字符串是否为数字的6种方法相关推荐
- Shell中判断字符串是否为数字的6种方法分享
本篇文章主要介绍了"shell 判断字符串是否为数字",主要涉及到shell 判断字符串是否为数字方面的内容,对于shell 判断字符串是否为数字感兴趣的同学可以参考一下. #!/ ...
- Java中判断字符串是否为数字的五种方法
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 推荐使用第二个方法,速度最快. 方法一:用JAVA自带的函数 Java代码 public sta ...
- java中判断字符串是否为数字的三种方法
1用JAVA自带的函数 public static boolean isNumeric(String str){for (int i = str.length();--i>=0;){ if (! ...
- Java 正则中判断字符串是否为数字的两种方法
方法1: public static boolean isNumber(String str){Pattern pattern = Pattern.compile("\\d+"); ...
- isdigit函数python检测数字个数_Python中判断字符串是否为数字的三个方法isdecimal 、isdigit、isnumeric的差别...
isdecimal .isdigit.isnumeric这三个字符串方法都用于判断字符串是否为数字,为什么用三个方法呢?他们的差别是什么内? isdecimal:是否为十进制数字符,包括Unicode ...
- java equals 判断空_Java 判断字符串是否为空的三种方法与性能分析
[java中判断字符串是否为数字的三种方法 1>用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = s ...
- java中判断字符串是否为数字的方法 StringUtil包函数
java中判断字符串是否为数字的方法: 1.用JAVA自带的函数 public static boolean isNumeric(String str){ for (int i = 0; i &l ...
- java中判断字符串是否为数字(正整数)
标题:java中判断字符串是否为数字(正整数) 遍历s的每一个字符 private boolean isNumeric(String s) {for (int i = 0; i < s.leng ...
- python中字符串转成数字的几种方法
在python列表操作中,面对需要把列表中的字符串转为礼拜的操作,无需强转,通过简单的几步就可以实现,本文介绍python中字符串转成数字的三种方法:1.使用join的方法:2.使用int函数将16进 ...
最新文章
- 提高Service提高进程优先级别,不被系统容易杀死
- 强烈推荐几个我常置顶阅读清华、哈工大的平台公众号!
- 【SPSS】SPSS第五周作业
- 【tensorflow】——tensorboard可视化计算图以及参数曲线图loss图
- Codeforces Round #715 (Div. 2)
- python float 精度_浅谈Python里面小数点精度的控制
- 网络基本知识(1) ARP解析
- 将samba加入到windows域《转载》
- 离线缓存之RNCachingURLProtocol解析
- 分享:开源货币新世界
- mysql插入datetime默认值0000-00-00时报错
- bootstrap 获取表格修改的结果_bootstrap table getData获取表格数据的方法
- R语言基础数据分析——双因素方差分析
- [转帖]怎样选择(FC-SAN)光纤通道(存储)交换机
- 我谈 Markdown
- EXPLAIN各个字段是什么意思
- 网络文件存储系统(三)fastdfs分布式文件系统实战
- 雷达感应智能化技术,让家居生活更智能,雷达传感器技术应用
- 使用Htmlunit工具获取表单中的input
- centos7下mysql忘记密码并修改
热门文章
- yml和properties的区别
- MySQL 去除字符串中的括号以及括号内的内容
- Android Multimedia Framework overview(多媒体框架概述)--base on jellybean(一)
- Pause Giant AI Experiments: An Open Letter(暂停大型人工智能实验: 一封公开信)
- java around_around
- 5-29 止跌上涨中,关注明后两天能否创新高点
- CentOS7 安装WPS: libGLU.so.1()
- RabbitMQ 安装 rabbitmq-plugins 报错
- 【从零开始vnpy量化投资】一. vnpy初探 - 注册、安装、运行策略
- java mysql geometry_java程序操作Geometry对象