day1 perl overview and basic synatax

本文深入讲解Perl中的标量概念,包括数字、字符串的表示及操作,以及标量变量的定义和使用方法。通过实例演示了如何进行算术运算、字符串拼接及变量内插。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本次笔记针对 E 课网 k.lin 老师的《Perl 在芯片验证中的实践》感谢万分!


tips:

  • 编写脚本最好输出帮助信息–help message

    防止自己时间久了忘记,或者方便其他用户使用


synatax

Scalar Data

标量的概念

在 Perl 中也有类似于单数和复数的区别,标量代表单件事物。
- 标量可以是 ++ 字符串或者数字 ++
- 可以使用操作符对标量进行操作

数字
可以分成以下几种类型:
  1. 浮点数

    34.3 ;
    1.25e5 (==e 为 10 的指数 ==)

  2. 整数

    145
    1_231_123(== 允许使用下划线 同 Verilog==)

  3. 非十进制整数

    0255 (8 进制 255)
    0xf8 (hex)
    0b100_0010(binary)

    • 算术操作符

    == 算数运算符同 Verilog==

    注意:** 为乘幂

字符串
字符串分为两种形式:“单引号”和“双引号”字符串
单引号中的字符串
  1. 除单引号和反斜线字符外,单引号内的所有字符都代表其本身(同 shell)
  2. ” \ +’ ” 表示单引号
  3. ” \ + \“表示反斜线
  4. “\n” 表示反斜线和 n 这两个字符
双引号中的字符串
  1. 反斜线字符是转义字符,可以用来表示控制字符
  2. \n 表示换行
  3. 双引号支持变量的内插
  4. 下面这 4 个字符在双引号内有特殊含义

$ 表示变量
@ 表示数组的开始

\

** 如果要在双引号内使用该字符,需要加反斜线 \ 进行转义 –同 shell**
双引号中的字符串操作
  1. 拼接操作符 : .

    拼接操作符用于将两个字符串连接起来
    eg: “who” . “are” . “you?\n”
    等价于”who are you ?\n”


2. 重复操作符:X
该操作符会将左边的操作数与它本身进行连接,重复次数看右边的操作数
eg: “bag”x3
结果为 “bagbagbag”

Scalar Variable

标量变量的定义

标量变量以 $ 开头,后面接 Perl 标识符(由字母、数字、下划线组成,但必须由字母或者下划线开始)—按:那不就是说标识符不能以数字开始

要慎重使用 perl 默认的变量

perl 的一些特殊的内置变量:

$n包含上次匹配的第n个字符串
$_ 默认输入和模式匹配内容 —按:就是没有使用变量就是使用的默认变量
$$ 运行当前Perl 脚本的进程号—PID
$@ 命令eval的错误消息,如果为空,则表示eval 命令执行成功
$? 进程结束的状态
$! die命令抛出的信息(系统错误字符串)
@ARGV 传给Perl脚本的命令行参数列表都存在这样的数组里面
@_ 传给子程序的参数列表
@INC 在导入模块时需要搜索的目录列表 ,比如倒入一些第三方模块的时候,Perl 就会在这些数组里面去寻找这个模块(INCLUDE)

标量变量的赋值

$value = 5;

双目赋值操作符

value=value=value + 3 ;
equal: $value += 3;
==note== 拼接运算符也可以用双目赋值操作符

标量变量的内插的补充

  • 标量变量在双引号中可以内插
  • 输出 $ 符号需要在前面加上 \ 进行转义,或者使用单引号
  • 如果要在变量内插后紧接着输出字母、数字或者下划线,可以使用花括号 {}.

“today is {year}_{year}_{mon} _${day}\n”
这样使用的变量就是 year mon 和 day 而不是带下划线的变量 .

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值