perl 纯变量(Scalar) 转载
转载http://blog.chinaunix.net/uid-20639775-id-154591.html
Perl有三种变量:
一、纯变量
又称标量变量,是Perl处理的最简单的数据类型。标量可以是数字(如2,3或2.5e6), 也可以是字符串(如“hello”和“网上学园”)。
Perl中的标量变量以美元符号$和一个字母开始,以后可以是字母、数字和下划线,大小写有区别,而且所有字母、数字和下划线都有效。如:
$a和$A是不同的变量;
$this_is_a_long_variable_1和
$this_is_a_long_variable_2是不同的变量;
Perl中的变量可以通过操作符(如+或.等)来产生新的变量。你可以从文件和设备中读取变量,也可以将其输出。
使用纯量变量时要在前面加上$符号,
注意:指定的纯变量是一个字符的话,就要加上""双引号或单引号;如果是数值的话,就不用加上""这个符号。
标量数据又可以分为数字和字符串两种:
数字
可分为整型变量和浮点变量。
整型变量:(如2,-200,3568等)。Perl支持8进制和16进制变量,8进制以0开头(如0255,表示8进制的255),16进制以0x或0X开头
(如-0x1a,代表负的1A)
实型变量:(如2.5,-6.3e5,-2.3-e6等)。
字符串
最短的字符串可以没字符,最长可以把你的内存填满,这与Perl的“无内置限制”的原则一致。
字符串有两种格式:单引字符串和双引字符串。
单引字符串(single-quoted string):
就是用单引号括起来的一串字符。该单引字符串不是字符串的一部分。
引号中可以插入任何字符。只有两种情况例外,一种是中间插入单引号,并在前面有一反斜杠;一种是字符串有两个连着的反斜杠。
双引字符串(double-quoted string):
就是用双引号括起来的一串字符,其作用类似于C语言。
双引字符串中反斜杠转义表
结 构 | 含 义 |
\n | 换行 |
\r | 回车 |
\t | 水平置表符 |
\f | 换页符 |
\b | 退格 |
\v | 垂直置表符 |
\a | 响铃 |
\e | Esc |
\007 | 任一八进制ASCII值(这里007表示bell) |
\x7f | 任一十六进制ASCII值 |
\cC | 任一“控制”字符 |
\\ | 反斜杠 |
\" | 双引号 |
\l | 下一字母小写 |
\L | 以后所有字母小写直到\E |
\u | 下一字母大写 |
\U | 以后所有字母大写直到\E |
\E | 结束\L和\U |
标量变量的运算符
1、赋值运算符
如:$a=23; #将23赋值给$a
$b=$a=23; #将23赋值给$a和$b
$b=3+($a=2); #将2赋值给$a,再加3将值赋给$b,即$b为5
2、二元赋值运算符
如:$a=+3; #等同于$a=$a+3
这与C语言中基本相同。
3、自增自减运算符
如:$a++; #等同于$a=$a+1
这与C语言中基本相同。
4、chop()运算符
如:$a="hello";
chop($a); #此时$a的值为"hell"。
这对于从屏幕获取文本后去除换行符很有用。
如:$a=; #获取文本
chop($a); #去除最后的换行符。
这两行可合并为:
chop($a=);
5、字符串的标量插入值
如:$a="zmd";
$b="hello! $a";
$b的值为"hello! zmd"。
综合示例
$url1='hello'; | #将hello这串字符赋给$url1变量; |
$url2='don\'t'; | #将don't这串字符赋给$url2变量; |
$url3='hello\n'; | #将hello\n这串字符赋给$url3变量;注意\n不被当作换行符而是\和n两个字符; |
$url1="http://zmd.zb169.net"; | #将http://zmd.zb169.net这串字符赋给$url1变量; |
$url2="/cgi-bin/"; | #将/cgi-bin/这个字符赋给$url2变量; |
$url3=$url1.$url2; | #将两个变量的字符串连起, $url3="http://zmd.zb169.net/cgi-bin/"; |
$int=5; | #将10赋给$int变量; |
$int=5+6; | #$int=11; |
$int=5*6; | #$int=30; |
$int=5;$int++; | #$int=6; |
$int=5;$int+=8; | #$int=13; |
$a="\Uzmd";$b="\u\LZHENG";$c="$a $b" |
#$a="ZMD"; $b="Zheng"; $c="ZMD Zheng" |
perl 纯变量(Scalar) 转载的更多相关文章
- perl 数组变量(Array) 转载
Perl 变量(2)--数组 原文地址:Perl 变量(2)--数组 作者:飞鸿无痕 二.数组 数组是标量数据的有序列表. 数组可以含任意多个元素.最小的数组可以不含元素,而最大的数组可以占满全部可用 ...
- Perl的变量
变量 在perl中,普通变量被称为"标量变量"(scalar),标量是指单个值的意思.还有非标量的数据,如数组.列表.hash等.标量变量和这种非标量的关系,类似于英语里面的单数和 ...
- Perl的变量及语境(一)
Perl语言中的大部分语句表达式后都紧接一个分号,分隔不同的Perl语句. perl解释器能一次完成编译和运行这两个动作. perl通过一对反引号"``"来表示运行外部命令. 也可 ...
- perl模块终极解决方案--转载
不管别人怎么说,反正我是非常喜欢perl语言的! 也会继续学习,以前写过不少perl模块的博客,发现有点乱,正好最近看到了关于local::lib这个模块. 居然是用来解决没有root权限的用户安装, ...
- 2章 perl标量变量
标量变量 单单存储一个值得变量 ,单个标量值 $name 为变量 区分大小写 $barney=$barney*2 第一次 取值 等号右边 :第二次 赋值 等号左边 双目操作符 ...
- u-boot中filesize环境变量【转载】
转载地址:https://blog.csdn.net/fzs333/article/details/48518559 U-Boot中的环境命令可以使用$(filesize)来确定刚下载(传输)得到的文 ...
- perl静态变量
state操作符功能类似于C里面的static修饰符,state关键字将局部变量变得持久. state也是词法变量,所以只在定义该变量的词法作用域中有效,举个例子: #!/usr/bin/perl u ...
- perl检查变量是否定义
my $label = defined($pieces[0]) ? $pieces[0] : ""; my @alreadyAddedCol = $node1->{DB}-& ...
- linux下修改path变量(转载)
比如要把/etc/apache/bin目录添加到PATH中 1.#PATH=$PATH:/etc/apache/bin 使用这种方法,每当登出PATH就会恢复 2.#vi /etc/profile 在 ...
随机推荐
- layui 实现图片上传和预览
[学习笔记] 图片不自动上传并在表单提交时再上传,看代码. 附上表单页面 前台实现 <#--图片名--><input id="fileName" type=&qu ...
- Django+celery+rabbitmq实现邮件发送
一.环境 1.pip包 amqp==2.4.2 anyjson==0.3.3 billiard==3.6.0.0 celery==4.3.0 Django==2.2 dnspython==1.16.0 ...
- 怎样在 Vue 中使用 v-model 实现双向数据绑定?
1. 所谓 双向数据绑定, 可以理解为: 修改 A , B 会跟着被修改, 修改 B , A 会跟着被修改. 常用在需要 进行用户输入的地方, 比如 这些 html 标签: input.select ...
- pidof---找寻PID
pidof---找寻pid 1.根据守护进程找到pid [root@localhost ~]# pidof sshd 2542 1622 [root@localhost ~]# ps -ef | gr ...
- react的嵌套组件
react没有vue插槽的概念,但是有嵌套组件,可以用嵌套组件实现类似插槽的功能.下例中,color,name,btn相当于具名插槽,children相当于匿名插槽. import React fro ...
- 一个小时前,美国主流媒体,头条,谷歌两位创始人突然宣布退下来,把万亿美元的帝国交给Sundar Pichai
一个小时前,美国各大主流媒体头条,谷歌两位创始人,放弃了万亿美元的帝国控制权,交给了CEO Sundar Pichai.
- Android中如何判断内存卡是否存在
if (Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)) { /* 得到SD卡得路 ...
- vue打开到新页面,并传递参数
打开新页面,有两种方式, 一种是标签式: <router-link tag="a" target="_blank" :to="{path: '/ ...
- ES6入门四:对象字面量扩展与字符串模板字面量
简洁属性与简洁方法 计算属性名与[[prototype]] super对象(暂时保留解析) 模板字面量(模板字符串) 一.简洁属性与简洁方法 ES6中为了不断优化代码,减低代码的耦合度在语法上下了很大 ...
- px自动换算rem
//designWidth:设计稿的实际宽度值,需要根据实际设置//maxWidth:制作稿的最大宽度值,需要根据实际设置//这段js的最后面有两个参数记得要设置,一个为设计稿实际宽度,一个为制作稿最 ...