perl基础入门

文章目录

Perl语言基础入门

一、简介

  • Perl 是 Practical Extraction and Report Language 的缩写,可翻译为 "实用报表提取语言"。
  • Perl 是高级、通用、直译式、动态的程序语言。
  • Perl 最初的设计者为拉里·沃尔(Larry Wall),于1987年12月18日发表。
  • Perl 借用了C、sed、awk、shell脚本以及很多其他编程语言的特性。
  • Perl 最重要的特性是Perl内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。

二、基础语法

这里主要介绍基础语法,如果有环境问题可自行百度

1.你好世界

perl 复制代码
#!/usr/bin/perl 
 
print "Hello, World!\n";

2.注释

perl 注释的方法为在语句的开头用字符#

perl 复制代码
# 这一行是 perl 中的注释

3.转义字符

如果我们需要输出一个特殊的字符,可以使用反斜线(\)来转义

4.变量

变量是存储在内存中的数据,创建一个变量即会在内存上开辟一个空间。

解释器会根据变量的类型来决定其在内存中的存储空间,因此你可以为变量分配不同的数据类型,如整型、浮点型、字符串等。

变量不需要显式声明类型,在变量赋值后,解释器会自动分配匹配的类型空间

perl 复制代码
$age = 25;

5.标量

标量是一个单一的数据单元。 数据可以是整数,浮点数,字符,字符串,段落等。简单的说它可以是任何东西

6.数组

数组是用于存储一个有序的标量值的变量。

数组 @ 开始。

要访问数组的变量,可以使用美元符号($)+变量名,并指定下标来访问

perl 复制代码
@array = (1, 2, 'Hello');

7.条件语句

语句 描述
if 语句 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。
if...else 语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。
if...elsif...else 语句 您可以在一个 if 语句后可跟一个可选的 elsif 语句 ,然后再跟另一个 else 语句
unless 语句 一个 unless 语句 由一个布尔表达式后跟一个或多个语句组成。
unless...else 语句 一个 unless 语句 后可跟一个可选的 elsif 语句 ,然后再跟另一个 else 语句
unless...elsif...else statement 一个 unless 语句 后可跟一个可选的 elsif 语句 ,然后再跟另一个 else 语句
switch 语句 在最新版本的 Perl 中,我们可以使用 switch 语句。它根据不同的值执行对应的代码块。

8.循环

循环类型 描述
while 循环 当给定条件为 true 时,重复执行语句或语句组。循环主体执行之前会先测试条件。
until 循环 重复执行语句或语句组,直到给定的条件为 true。 循环主体执行之前会先测试条件。
for 循环 多次执行一个语句序列,简化管理循环变量的代码。
foreach 循环 foreach 循环用于迭代一个列表或集合变量的值。
do...while 循环 除了它是在循环主体结尾测试条件外,其他与 while 语句类似。
嵌套循环 您可以在 while、for 或 do...while 循环内使用一个或多个循环。

9.循环控制语句

控制语句 描述
next 语句 停止执行从next语句的下一语句开始到循环体结束标识符之间的语句,转去执行continue语句块,然后再返回到循环体的起始处开始执行下一次循环。
last 语句 退出循环语句块,从而结束循环
continue 语句 continue 语句块通常在条件语句再次判断前执行。
redo 语句 redo 语句直接转到循环体的第一行开始重复执行本次循环,redo语句之后的语句不再执行,continue语句块也不再执行;
相关推荐
Niu_brave1 分钟前
Python基础知识学习(2)
开发语言·python·学习
神仙别闹16 分钟前
基于C#+Mysql实现(界面)企业的设备管理系统
开发语言·mysql·c#
大柏怎么被偷了24 分钟前
【C++算法】位运算
开发语言·c++·算法
程序猿方梓燚25 分钟前
C/C++实现植物大战僵尸(PVZ)(打地鼠版)
c语言·开发语言·c++·算法·游戏
CPP_ZhouXuyang26 分钟前
C语言——模拟实现strcpy
c语言·开发语言·数据结构·算法·程序员创富
Zucker n32 分钟前
猫狗识别大模型——基于python语言
开发语言·python
bluebonnet271 小时前
【Rust练习】15.match 和 if let
开发语言·后端·rust
yueqingll1 小时前
020、二级Java选择题综合知识点(持续更新版)
java·开发语言
计算机学姐1 小时前
基于python+django+vue的在线学习资源推送系统
开发语言·vue.js·python·学习·django·pip·web3.py
A洛1 小时前
Cloudflare Pages 部署 Next.js 应用教程
开发语言·github·nextjs·cloudflare·cloudflarepages