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 在 ...
随机推荐
- centos7搭建NFS服务
服务器端 139.155.90.78 客户端 192.168.198.146 先查看自己的系统有没有安装rpcbind 和nfs-utils rpm -qa nfs-utils rpcbind 若使 ...
- c++学习笔记之类模板
C++ 除了支持函数模板,还支持类模板(Class Template).函数模板中定义的类型参数可以用在函数声明和函数定义中,类模板中定义的类型参数可以用在类声明和类实现中.类模板的目的同样是将数据的 ...
- Python 字符串,元祖,列表之间的转换
1.字符串是 Python 中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hello World!' 2. ...
- Java 反射理解(一)-- Class 类的使用
Java 反射理解(一)-- Class 类的使用 概念 这里阐述几个基本概念: 在面向对象的世界里,万事万物皆对象.(在 Java 语言中,静态的成员.普通数据类型除外) 类也是对象,类是 java ...
- C语言写郑州大学校友通讯录
#include <stdio.h> #include <string.h> #include <stdlib.h> #define LEN sizeof(stru ...
- C#中属性的封装
封装的一般性 封装快捷键:Ctrl+R+E 封装的目的: public修饰的属性,不够安全:private修饰的属性,无法使用所以,用到了封装: 封装就是 隐藏对象的信息,但要流出访问的接口 封装代码 ...
- GTA4 EFLC cheat code
GTA4 EFLC cheat code 提示警告:您的图像设置接近或超出您的系统推荐资源限制,为了使游戏运行更加流畅推荐你降低你的图像设置. 在游戏目录新建名为 commandline的txt文本文 ...
- mintUI和mUI
mintUI 安装: npm install mint-ui -S 引入: // 按需引入部分组件 import { Cell, Checklist } from 'mint-ui'; Vue.com ...
- 简单聊聊服务发现(redis, zk,etcd, consul)(转载)
服务发现并没有怎样的高深莫测,它的原理再简单不过.只是市面上太多文章将服务发现的难度妖魔化,读者被绕的云里雾里,顿觉自己智商低下不敢高攀. 服务提供者是什么,简单点说就是一个HTTP服务器,提供了AP ...
- get获取后台数据
let url = $.getCookie('prefixUrl')+'/currencyRatesManage/getCurrency'; let vm=this; $.ajax({ url: ur ...