转载http://blog.chinaunix.net/uid-20639775-id-154591.html

Perl有三种变量:

  1. 纯变量(Scalar Varible)
  2. 数组(Array)
  3. 关联数组(Associative array)

一、纯变量

又称标量变量,是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) 转载的更多相关文章

  1. perl 数组变量(Array) 转载

    Perl 变量(2)--数组 原文地址:Perl 变量(2)--数组 作者:飞鸿无痕 二.数组 数组是标量数据的有序列表. 数组可以含任意多个元素.最小的数组可以不含元素,而最大的数组可以占满全部可用 ...

  2. Perl的变量

    变量 在perl中,普通变量被称为"标量变量"(scalar),标量是指单个值的意思.还有非标量的数据,如数组.列表.hash等.标量变量和这种非标量的关系,类似于英语里面的单数和 ...

  3. Perl的变量及语境(一)

    Perl语言中的大部分语句表达式后都紧接一个分号,分隔不同的Perl语句. perl解释器能一次完成编译和运行这两个动作. perl通过一对反引号"``"来表示运行外部命令. 也可 ...

  4. perl模块终极解决方案--转载

    不管别人怎么说,反正我是非常喜欢perl语言的! 也会继续学习,以前写过不少perl模块的博客,发现有点乱,正好最近看到了关于local::lib这个模块. 居然是用来解决没有root权限的用户安装, ...

  5. 2章 perl标量变量

    标量变量 单单存储一个值得变量   ,单个标量值 $name   为变量  区分大小写 $barney=$barney*2   第一次  取值  等号右边    :第二次  赋值 等号左边 双目操作符 ...

  6. u-boot中filesize环境变量【转载】

    转载地址:https://blog.csdn.net/fzs333/article/details/48518559 U-Boot中的环境命令可以使用$(filesize)来确定刚下载(传输)得到的文 ...

  7. perl静态变量

    state操作符功能类似于C里面的static修饰符,state关键字将局部变量变得持久. state也是词法变量,所以只在定义该变量的词法作用域中有效,举个例子: #!/usr/bin/perl u ...

  8. perl检查变量是否定义

    my $label = defined($pieces[0]) ? $pieces[0] : ""; my @alreadyAddedCol = $node1->{DB}-& ...

  9. linux下修改path变量(转载)

    比如要把/etc/apache/bin目录添加到PATH中 1.#PATH=$PATH:/etc/apache/bin 使用这种方法,每当登出PATH就会恢复 2.#vi /etc/profile 在 ...

随机推荐

  1. Linux系列(11):之bash进阶与数据流导向、管线命令

    1.万用字符与特殊字符 在bash的环境下有一个特别有用的功能,那就是万用字符!下面展示常见的万用字符: 1.万用字符 除了万用字符还有一些其他的特殊字符,接下来显示特殊字符. 2.特殊字符 2.数据 ...

  2. c++ erase 中的坑

    先看一段正常的代码 #include <iostream> #include <string> using namespace std; int main() { " ...

  3. ci框架读取上传的excel文件数据

    原文链接: https://blog.csdn.net/qq_38148394/article/details/87921373 此功能实现使用到PHPExcel类库,PHPExcel是一个PHP类库 ...

  4. sysbench测试

    什么是基准测试 数据库的基准测试是对数据库的性能指标进行定量的.可复现的.可对比的测试. 基准测试与压力测试 基准测试可以理解为针对系统的一种压力测试.但基准测试不关心业务逻辑,更加简单.直接.易于测 ...

  5. T100——上传图片

    例子可参考aooi100,上传集团logo的程序 ON ACTION btn_updatelogo #選取上傳檔案,GDC專用 LET gs_upload = NULL CALL cl_client_ ...

  6. 并不对劲的bzoj4001:loj2105:p3978:[TJOI2015]概率论

    题目大意 随机生成一棵\(n\)(n\leq10^9)个节点的有根二叉树,问叶子结点个数的期望. 题解 subtask 1:\(n\leq100\),70pts 结论:不同的\(n\)个节点的有根二叉 ...

  7. Bootstrap3基础教程 02 网格布局

    Bootstrap 提供了一套响应式.移动设备优先的流式网格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多列. 网页设计中的网格布局作用:组织内容,让网站易于浏览,并降低用户端 ...

  8. sql使用临时表循环

    code CREATE PROCEDURE sp_Update_Blogger_Blog_ArticleCount AS BEGIN declare @account varchar(); --博主账 ...

  9. 不同格式的YUV 和 RGB互转

    YUV色彩空间:        Y是亮度值,也就是说8位的灰度值即可组成一幅黑白图像,黑白电视机就是这样的.        UV是色彩值,是给Y上色用的.U是Cb也就是RGB中的蓝色分量,V是Cr也就 ...

  10. KTV歌曲播放原理

    歌曲播放原理 一开始要有一个Song类,在类外面定义枚举,在里面放四种状态, 为:已播放,未播放,重唱,切歌 在类里把歌曲名称和路径封装成字段 起初每首歌的状态默认为未播放 通过MadeSongPla ...