Perl 的语法灵活且实用,融合了 C、shell 脚本和正则表达式的特点。本文将介绍变量、控制结构、输入输出等基础内容,适合初学者入门。
目录
1. 基本规则
- 脚本开头:通常以
#!/usr/bin/perl
开始(Linux/macOS)。 - 严格模式:
use strict;
强制变量声明,减少错误。 - 警告模式:
use warnings;
显示潜在问题。 - 语句分隔:每行以分号
;
结束。
示例:
#!/usr/bin/perl
use strict;
use warnings;
print "Hello, Perl!\n";
站内链接:安装Perl环境,见 Perl 环境安装。
2. 变量与数据类型
Perl 有三种主要数据类型:
标量 ($)
存储单个值(数字、字符串):
my $name = "Alice"; # 字符串
my $age = 25; # 数字
print "$name is $age years old.\n";
数组 (@)
存储有序列表:
my @fruits = ("apple", "banana", "orange");
print "First fruit: $fruits[0]\n"; # 下标从0开始
哈希 (%)
存储键值对:
my %info = ("name" => "Bob", "age" => 30);
print "Name: $info{'name'}\n";
注意:my
定义局部变量,避免全局污染。
3. 运算符
算术运算符
+
, -
, *
, /
, %
, **
(幂)。
my $x = 5 + 3; # 8
my $y = 2 ** 3; # 8
print "$x, $y\n";
比较运算符
- 数字:
==
,!=
,<
,>
,<=
,>=
- 字符串:
eq
,ne
,lt
,gt
,le
,ge
my $a = 10;
my $b = "10";
print "Equal\n" if $a == $b; # 数字比较
print "Not equal\n" if $a ne $b; # 字符串比较
逻辑运算符
&&
(与)、||
(或)、!
(非)。
my $flag = (5 > 3) && (2 < 4); # 真
print "True\n" if $flag;
4. 控制结构
条件语句
my $score = 85;
if ($score >= 90) {
print "优秀\n";
} elsif ($score >= 60) {
print "及格\n";
} else {
print "不及格\n";
}
循环
- for 循环:
for my $i (1..5) {
print "$i ";
} # 输出:1 2 3 4 5
print "\n";
- while 循环:
my $count = 0;
while ($count < 3) {
print "Count: $count\n";
$count++;
}
- foreach 遍历数组:
my @numbers = (10, 20, 30);
foreach my $num (@numbers) {
print "$num\n";
}
5. 输入与输出
输出
使用 print
或 say
(Perl 5.10+,需 use feature 'say';
):
print "Hello\n";
say "World"; # 自动加换行符
输入
从标准输入读取:
print "请输入名字:";
my $input = <STDIN>;
chomp($input); # 移除换行符
print "你好,$input!\n";
站内链接:处理文件输入输出,见 文件操作。
6. 子程序(函数)
定义和调用子程序:
sub greet {
my ($name) = @_; # 接收参数
return "Hello, $name!";
}
my $message = greet("Alice");
print "$message\n"; # 输出:Hello, Alice!
@_
是默认参数数组。return
返回值可选,若无则返回最后表达式的结果。
7. 参考资料
站内链接
出站链接
- Perldoc: Perl Syntax – 官方语法文档。
- Perl Maven: Basics – 基础教程。
- CPAN – 扩展Perl功能。
其他资源
- 《Learning Perl》 – 入门书籍。
- X社区:搜索 #PerlSyntax 获取代码示例。
这篇指南涵盖了Perl的基础语法,适合初学者快速上手。如果需要深入某个部分(比如正则表达式或复杂数据结构),请告诉我!
发表回复