Perl 中的 $.(美元符号点)操作符146
在 Perl 编程语言中,符号点操作符 $ 是一个内置的特殊变量。它表示当前行号,从输入文件或源代码的开始处开始计数。
语法
$ 的语法如下:```perl
$.
```
$. 可以出现在表达式的任何位置,单独使用或与其他操作符结合使用。
用法
$. 最常见的用法是获取当前行号。可以使用 $. 直接输出行号,也可以在计算或比较中使用它。
例如,以下代码输出当前行号:```perl
print "当前行号:$." . "";
```
以下代码计算文件中第 10 行之后的行数:```perl
my $num_lines_after_10 = $#_ - 10;
print "第 10 行之后的行数:$num_lines_after_10" . "";
```
$. 还可以用作条件表达式中的条件。例如,以下代码仅在当前行号大于 5 时打印当前行:```perl
if ($. > 5) {
print $_;
}
```
示例
以下是一些使用 $. 的示例:```perl
# 输出文件中的所有行号
while () {
print $. . ": " . $_;
}
# 计算文件中行数
my $num_lines = $#_ + 1;
print "文件行数:$num_lines" . "";
# 仅打印每 10 行的第一个字符
while () {
if ($. % 10 == 1) {
print substr($_, 0, 1);
}
}
```
注意事项* $. 是一个只读变量,不能修改。
* $. 会随着程序的运行而自动更新,反映当前的行号。
* 当文件结束或发生错误时,$. 会设置为 -1。
* $. 可以与其他运算符结合使用,例如 +、-、* 和 /。
Perl 中的 $ 符号点操作符 $. 是一个有用的工具,用于获取当前行号并进行各种计算和操作。它可以用来处理文本文件、生成报告或构建复杂的逻辑。
2025-02-08
上一篇:中文分词工具:tr perl
下一篇:Perl汇编简介和使用指南
![使用 nohup perl 在 Linux 中后台运行 Perl 脚本](https://cdn.shapao.cn/images/text.png)
使用 nohup perl 在 Linux 中后台运行 Perl 脚本
https://jb123.cn/perl/34911.html
![Perl 编程语言大全](https://cdn.shapao.cn/images/text.png)
Perl 编程语言大全
https://jb123.cn/perl/34910.html
![脚本语言维护的最佳实践](https://cdn.shapao.cn/images/text.png)
脚本语言维护的最佳实践
https://jb123.cn/jiaobenyuyan/34909.html
![少儿编程类脚本软件:助力孩子编程启蒙](https://cdn.shapao.cn/images/text.png)
少儿编程类脚本软件:助力孩子编程启蒙
https://jb123.cn/jiaobenbiancheng/34908.html
![世界脚本语言排行:Python 独占鳌头,其他语言紧随其后](https://cdn.shapao.cn/images/text.png)
世界脚本语言排行:Python 独占鳌头,其他语言紧随其后
https://jb123.cn/jiaobenyuyan/34907.html
热门文章
![深入解读 Perl 中的引用类型](https://cdn.shapao.cn/images/text.png)
深入解读 Perl 中的引用类型
https://jb123.cn/perl/20609.html
![高阶 Perl 中的进阶用法](https://cdn.shapao.cn/images/text.png)
高阶 Perl 中的进阶用法
https://jb123.cn/perl/12757.html
![Perl 的模块化编程](https://cdn.shapao.cn/images/text.png)
Perl 的模块化编程
https://jb123.cn/perl/22248.html
![如何使用 Perl 有效去除字符串中的空格](https://cdn.shapao.cn/images/text.png)
如何使用 Perl 有效去除字符串中的空格
https://jb123.cn/perl/10500.html
![如何使用 Perl 处理容错](https://cdn.shapao.cn/images/text.png)
如何使用 Perl 处理容错
https://jb123.cn/perl/24329.html