设为首页 收藏本站
查看: 1155|回复: 0

[经验分享] perl语言入门(1)

[复制链接]

尚未签到

发表于 2018-9-1 08:05:12 | 显示全部楼层 |阅读模式
  第一章 perl
  #!/usr/bin/perl -w
  #上述语句声明perl的路径和启用警告。
  -----------------------------------------------
  第二章 标量数据
  1. 数值(整数和浮点数),在perl中统一都是按照双精度浮点数来计算的。
  浮点数范围至少是1e-100到1e100.
  61_298_040_283_768
  # 整数的一个表示方法。
  八进制octal以0 开头,十六进制以0x 开头,二进制(binary) 0b 开头.
  十进制decimal
  数字操作符+-*/ %取模 **指数。
  注意对于取模10.2%%3.2,先是把2个操作数变成对应的整数值再计算,
  亦10%%3的模。
  注意2+3与2 + 3 都是正确的。
  2. 字符串
  最短的字符串是空字符串""或'',最长没有限制。
  单引号内引用单引号和反斜线需要用反斜线\转义。
  符号 含义
  \n 换行
  \r 回车
  \t 制表符
  \f formfeed
  \b 退格
  \a 响铃
  \e escape(ASCII 中的escape 字符)
  \007 任何八进制值(这里是,007=bell(响铃))
  \x7f 任何十六进制值(这里是,007=bell)
  \cC 一个控制符(这里是,ctrl +c)
  \\ 反斜线
  \” 双引号
  \l 下个字符小写
  \L 接着的字符均小写直到\E
  \u 下个字符大写
  \U 接着的字符均大写直到\E
  \Q 在non-word 字符前加上\,直到\E
  \E 结束\L,\E 和\Q
  字符串操作符
  . 字符串连接如 abc . 123
  x 字符串重复 "info" x 3 # info重复3次。
  当在需要数字的地方使用了字符串(如,乘法),Perl 将自动把字符串转换为其等价的数字,就像输入的是十进制浮点数一样◆。因此“12”* “3”将给出36。后面的非数字部分和前面的空格将被去掉,如“12fred34”* “3”将给出36 而不会用任何提示◆。在极端情形,当一个不含任何数字的字符串将别转换为0。如,将“fred”当作数字来使用时。
  不用担心使用的是数字还是字符串(大多数情况下)。Perl 将自动转换它们.
  3.变量
  $字符或下划线开头,后面可以包含数字。
  注意 没有初始化的变量的值为undef,输出时为空。也就是什么都没有,但是用defined测试值返回false。
  $fred = 17;
  # 对变量赋值。
  双目操作符
  += *= .= **=
  如果一个变量未被赋值,则将使用空值替换.
  $barney = “fred ate a $meat”; #$barney 现在是“fred ate a ”;
  允许使用小括号改变运行级别。
  数字和字符串的比较运算符,shell比较整型值时用的是字符串这一点跟perl正相反。
  比较关系 数字 字符串
  相等 = =  eq
  不等 !=  ne
  小于 <  Lt
  大于 >  gt
  小于或等于 =  ge
  4. if控制结构
  if(){
  }else{
  }
  # ()为真则执行。
  布尔值
  数字0为假,其余为真。
  字符空为假,其余为真。
  数字0和'0'都为假。
  4. 从键盘输入
  $line = ;
  # 表示字符串+换行符。
  chomp 取消字符串变量后的换行符,仅能去掉一个,返回值1。
  如果没有,那什么也不做,返回0。
  chomp($text = );
  $test = ;
  chomp($test); 或者chomp $test, 不加小括号也可以。
  5. while控制结构
  $count = 0;
  while($count < 10){
  $count += 2;
  print &quot;$count \n&quot;;
  }
  6. undef值
  print 一个没有初始化的变量输出空,就是空也不是空格。
  变量在第一次被赋值之前有一个特殊值undef,如果是对于数字则表现为0,对于字符串则表现为空串;
  但undef不是0也不是空串,而是一种标量类型。
  由于undef在需要数字的地方自动转化为0
  $n=1
  while ($n

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-560917-1-1.html 上篇帖子: OSPF协议栈的perl 脚本实现! 下篇帖子: Perl脚本Basic Authentication方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表