perl 的基本数据类型
1、变量
scalar:$varname 变量
数组: @varnanme
Hsah: %varname
文件: 通常大写字母
2、变量名的命名规则
简单变量以$开头后面跟字母数字或者下划线;
区分大小写;
变量名长度不限;
没有关键字,但是不能和内置变量重名;
数值:
12 -12 12e3 #(科学计数法,e不区分大小写) 1_222_2333 #-只是分隔符,便于阅读,perl语句执行时会自动忽略 012 #0开头的默认是八进制数 0x2f #十六进制数,f不区分大小写
#/usr/bin/perl $a=1283_11_31_51; print "$a \n";
结果:
[root@localhost tmp]# perl txt 1283113151
浮点
11.5 -.3 .3 0.3 2.5E6 #(e不区分大小写,后面数字为1-3位,整数位15位有效数字,超出则截断) 指数型浮点:指数为-309~308 ,太小则数值为0,太大则为1.#INF
字符串
"" 或者''
最少为为空"",最多可以占满空余内存,结尾不包含c语言的null('\0')
变量引用
变量引用使用变量名的最长匹配为原则:
$var="it"; $varing="ms"; print "\$var is $var\n" #此处最长匹配输出的为$varing的值 print "\$var is ${var}\n" #这是正确引用$var的方法 [root@localhost tmp]# perl txt $var is it $var is ms
转义字符
perl的转义字符和其他语言的转义字符类似:
\a | \b | \l | \xnn | ||||
\cn | \e | \r | '' | ||||
\L | \f | \t | \' | ||||
\n | \Q | \nnn | \\ |
字符比较
数值比较:
>,<,==,<=,>=,!=,<=>
<=>:$a <=> $b;
$a < $b,返回-1
$a = $b,返回0
$a > $b,返回1
perl会自动转换操作数到int,不能转换的转换为0
字符串比较:
lt gt ge eq le ne cmp
安照字母表的顺序:num<大写<小写 (a-z)
从左向右比较
当一个是另一个前缀时,较长的一个值大:god < godness
字符串可以从右向左进位,字母和数字分别进行
自动转换操作数为字符串
cmp用法同<=>
空字符串,0,undef的为假
字符串的连接
. 连接
print $x='a'.'b' ; #$x='ab'
#/usr/bin/perl $a="ace"; $b="me"; print "$a$b\n"; #把$a$b分别替换 print $a.$b; #把$a$b进行字符串拼接,作为一个整体 [root@localhost tmp]# perl txt aceme aceme
x 重复 x次数小于1,则为空,x的前后需要空格
#/usr/bin/perl $a='ox' x 5; print "$a\n"; [root@localhost tmp]# perl txt oxoxoxoxox
逻辑运算
&& and || or ! not xor
先计算逻辑运算左在计算右边
位操作
& | ~ ^ << >>
操作数为二进制整数,小数则截取为整数处理
赋值运算
= += -= *= /= %= **= &= |= ^= .=
($a=$b)+=3 #等价于 $a=$b; $a=$a+3;
++ --
可以用于字符串的自增,z Z 9时进位:
$a='az',$a++; →$a='ba'
不可以用于字符串的自减运算,$a--,按数值运算,转换为0,再自减
$a='az',$a--; →$a=-1
字符串含有非字母数值,数值位于字母中间,++运算转为0在自增
$a='a2z',$a++; →$a=1
$b=++$a先执行自增在执行赋值,$b=$a++先执行赋值在执行自增
$a='a2z'; $b=$a++; →$b='a2z'
$a='a2z'; $b=++$a; →$b=1
只能作用于单一变量:
($a+$b)++;#这种是错误的
条件运算
条件?真:假
优先执行条件表达式,真执行?后的内容,假则执行:后的内容
$result=$var==0?14:7
执行条件语句:$var==0,成立则执行赋值 $result=14,不成了则$result=7
条件变量在等号左边
$var==42?$var1:$var2 =14
各种运算的优先级
++/-- < <= > >= lt le gt ge ?: -~! == != <=> eq ne cmp = += *= ** |^
转载于:https://blog.51cto.com/12550795/1954286
perl 的基本数据类型相关推荐
- [Perl语法篇] 数据类型:标量$Scalar
I.知识点概要: 1.标量(数字型.字符型) 1.标量$Scalar 标量是用于存放一个值的变量,这个值可以是数字,也可以是字符串(其实数字就是字符串). Perl通过变量前的"魔符&quo ...
- BeginnersBook Perl 教程
来源:ApacheCN BeginnersBook 翻译项目 译者:飞龙 协议:CC BY-NC-SA 4.0 贡献指南 本项目需要校对,欢迎大家提交 Pull Request. 请您勇敢地去翻译和改 ...
- Perl语言学习总结
Perl ------practical extraction and report language <一>.实用性摘录与报表语言: <二>.常用到的与perl有关的网站:h ...
- 一文了解Perl语言
我在公众号发过很多编程语言的学习笔记,但是一直没有发Perl语言的编程教程.我大学的时候,学过一段时间的Perl语言,所以和Perl也有点缘分.这次去北京参加培训时发现他们教的Perl,所以接着机会发 ...
- PgSQL个人学习笔记(一)——PgSQL介绍
一.什么是PgSQL? PgSQL(全称PostgreSQL)是一个功能强大的开源对象-关系型数据库系统,结合了许多安全存储和扩展最复杂数据工作负载的功能.它支持大部分SQL标准并且提供了许多其他现代 ...
- perl语言数据类型
1.标量 标量是 Perl 语言中最简单的一种数据类型.这种数据类型的变量可以是数字,字符串,浮点数,不作严格的区分.在使用时在变量的名字前面加上一个 $,表示是标量.例如: $myfirst=123 ...
- perl删除文件_Perl小知识语法重点和数据类型
Hello,大家好,我是小舍,后续有我为大家介绍 Perl 编程相关知识,以及Perl在数字IC验证中的应用.Perl的全称是Practical Extractionand Report Langua ...
- 数据处理程序语言中的基本数据类型
程序语言根据其设计目的不同,其侧重的基本数据类型也不同.JAVA.C#等语言被设计用来进行通用的应用程序开发,其基本数据类型是字符串.数字.布尔等原子数据类型,以及数组和通用对象.而SQL.Power ...
- perl编程(基本语法 数据 类型)
基本语法 1.每条语句都以分号结束 2.文件以 .pl..PL 作为后缀,perl aaa.pl 执行 3.多行注释 =pod 这是一个多行注释 这是一个多行注释 这是一个多行注释 =cut 4.单引 ...
最新文章
- 计算机网络课程优秀备考PPT之第五章网络层(五)
- facelets_不要在facelets中重复表情
- 【转】一、用于VS2019的QT配置
- python输出用逗号隔开的数字_Python:从字符串中提取带有点和逗号的数字
- oracle 实现HA,使用KeepAlived实现HAProxy高可用
- phpstudy免费安全检测服务_@你,您有一份免费安全服务已到账
- bzoj 1663: [Usaco2006 Open]赶集(最长路)
- 19/03/17Python笔记
- 快速在多个word文件里面检索到关键字
- qimage加载jpg失败_QImage基本api
- 德语翻译器在线翻译中文-德语翻译器支持各大语言翻译
- 【经验分享】统计学算法大全及方法适用场景(必看)
- matlab数据读入,Matlab数据导入
- 有没有什么好的生日提醒软件推荐?3款软件让你的生活更有品质
- 输出1234无重复三位数
- 蓝桥杯C/C++程序设计 往届真题汇总(基础篇)
- python错误警告 PEP8 W605 invalid escape sequence ‘\.‘
- Windows 10(Win10) 怎么删除设备和驱动里的CD驱动器
- 百度网盘下载提速方法(更新于2020年6月)
- 在Mac中删除残留的启动台图标
热门文章
- 【Qt】QtCreator中关于Style Plugin Example没有效果的修改方法
- java备忘录模式应用场景_图解Java设计模式之备忘录模式
- mysql intersects_mysql gis 空间数据库 根据 经纬度查找附近 (INTERSECTS,within)
- phpstorm安装_PHPstorm设置浏览器打开代码
- python二分法查找算法_顺序查找算法和折半(二分法)查找算法,C语言查找算法详解...
- axure中图表背影_Axure 教程:动态图表——排名图
- Java项目:无库版商品管理系统(java+Gui+文档)
- vba 字体颜色_多掌握一些VBA语句,让自己书写代码更加顺畅
- 【Linux】Linux简单操作之vi与vim编辑器
- glibc降级后怎么恢复 linux_Linux(CentOS)GLIBC出错补救方式