当前位置: 首页 > news >正文

做平台网站一般有php还是js太原免费网站建站模板

做平台网站一般有php还是js,太原免费网站建站模板,多模室内设计网站,能做外链的产品网站鉴于shell脚本的限制和本事,浮点数(或“实数”)的验证过程乍一看似乎让人望而生畏,不过考虑到浮点数只不过是由小数点分隔的两个整数,再配合能够在脚本中引用其他脚本的能力(validint)&#xff…

鉴于shell脚本的限制和本事,浮点数(或“实数”)的验证过程乍一看似乎让人望而生畏,不过考虑到浮点数只不过是由小数点分隔的两个整数,再配合能够在脚本中引用其他脚本的能力(validint),你就会发现浮点数验证的代码长度出奇地短。

程序代码
#!/bin/sh
#filename:validint
#description:验证整数输入,允许出现负数。validint() {# 验证第一个参数并根据 最小值$2 和/或 最大值$3(如果指定的话)进行测试。# 如果第一个参数的值不在指定区间内或者不全是数字组成,那么脚本执行失败number="$1";    min="$2";       max="$3"# 判断输入是否为空if [ -z $number ]; thenecho "You didn't enter anything. Please enter a number." >&2return 1fi# 获取整数部分if [ "${number%${number#?}}" = "-" ]; then# 获取第一个字符以外的所有字符进行测试testvalue="${number#?}"elsetestvalue="$number"fi# 删除变量number中的所有数字,以作测试之用nodigits="$(echo $testvalue | sed 's/[[:digit:]]//g')"# 检查非数字字符if [ ! -z $nodigits ];thenecho "Invalid number format! Only digits, no commas, spaces, etc." >&2return 1fiif [ ! -z $min ];then# 输入值是否小于指定的最小值?if [ "$number" -lt "$min" ];thenecho "Your value is too small: smallest accpetable value is $min." >&2return 1fifiif [ ! -z $max ];then# 输入值是否大于指定的最大值if [ "$number" -gt "$max" ];thenecho "Your value is too big: largest acceptable value is $max." >&2return 1fifireturn 0
}
#!/bin/bash
# validfloat -- 测试数字是否为有效的浮点数
# 注意:该脚本不支持科学计数法(1.304e5)# 要测试输入的值是否为有效的浮点数,需要将值分为两个部分:整数部分和小数部分。
# 先测试第一部分是否为有效整数,然后测试第二部分是否为大于或等于0的有效整数。
# 因此 -30.-8则无效。# 使用“.”记法可以将另一个脚本包含到此脚本中:
#source /root/validint
. /root/validintvalidfloat() {fvalue="$1"# 检查输入的数字是否为有小数点if [ ! -z $(echo $fvalue | sed 's/[^.]//g') ];then# 提取小数点之前的部分decimalPart="$(echo $fvalue | cut -d. -f1)"# 提取小数点之后的部分fractionalPart="${fvalue#*\.}"# 先测试小数点左侧的整数部分。if [ ! -z $decimalPart ];then# 由于“!” 会颠倒测试逻辑,因此下面表示“如果不是有效的整数”。if ! validint "$decimalPart" "" "" ; thenreturn 1fifi# 现在测试小数部分# 小数点之后不能有负号(例如33.-11就不正确),因此先来测试负号if [ "${fractionalPart%${fractionPart#?}}" = "-" ];thenecho "Invalid floating-point number: '-' not allowed after decimal point." >&2return 1 fiif [ "$fractionalPart" != "" ];then# 如果小数部分不是有效的整数.....if ! validint "$fractionalPart" "0" "";thenreturn 1fifielse# 如果整个值只是一个“-”,那也不行if  [ "$fvalue" = "-" ];thenecho "Invalid floating-point format." >&2return 1fi# 最后,检查剩下的部分是否为有效的整数if ! validint "$fvalue" "" "" ; thenreturn 1fifireturn 0
}if validfloat $1 ; thenecho "$1 is a valid floating-point value."
fi
exit 0

工作原理

脚本首先检查输入值是否包含小数点。如果没有,那么说明不是浮点数。接下来,将输入值的整数部分和小数部分分开测试。然后在脚本检查整数部分(小数点左侧)是否有效。之后的代码就比较复杂了,因为我们需要检查有没有多余的负号(避免出现17-30这种情况),另外还要确保小数部分(小数点右侧)也是有效的整数。

最后检查用户指定的是否只是一个负号和小数点(得承认这确实挺怪异)。

如果都没有问题,脚本返回0,表示用户输入的是一个有效的浮点数。

精益求精

一个比较酷的改进是让这个函数能够处理最后一个例子中出现的科学记数法。这算不上多难,你可以先测试是否存在'e'或'E',然后将值分成3部分:整数部分(只有一个数字)、小数部分以及10的幂。剩下的事情就是确保每部分都是有效的整数。

http://www.zhongyajixie.com/news/43548.html

相关文章:

  • 省技能大赛网站开发方案深圳快速seo排名优化
  • 网站不让百度收录信息流优化师
  • 自助建网站网站优化公司哪家好
  • 网站后台关键词设置国内最近发生的重大新闻
  • 电子商务网站开发成本国内搜索引擎排名第一的是
  • 做网页做网站的技术人才seo类目链接优化
  • 做医疗科普的网站学做网站培训班要多少钱
  • 如何做百度网站广州外贸推广
  • 常州做网站基本流程网络营销环境分析
  • 网站建设完成后交付方式广州企业网站建设
  • 唯品会网站建设的目的百度影响力排名顺序
  • 网站域名做注册百度如何发布作品
  • 专业教育网站建设百度关键词查询网站
  • 男男做暧暧视频网站怎么做网页设计的页面
  • 深圳市做网站有哪些公司志鸿优化设计官网
  • 昆山制作网页seo成功的案例和分析
  • 如何提高网站的排名合肥seo快排扣费
  • 网站建设对教育解决方案厦门网站搜索引擎优化
  • 中国菲律宾热身赛武汉seo招聘
  • 重庆招聘网站哪个好seo网站优化论文
  • 江西网站建设技术手机网站建设
  • 网站建设服务标准化友情链接检查
  • 事件营销的经典案例谷歌seo价格
  • 正版传奇手游官方网站百度视频免费下载
  • 建设部监理协会网站搜索引擎优化宝典
  • 如何做和别人一样的网站免费合作推广
  • linux操作怎么做网站搜索引擎推广成功的案例
  • 杭州做企业网站互联网营销师国家职业技能标准
  • 公司网站优化要怎么做找索引擎seo
  • asp.net 企业网站系统唐山seo排名优化