一,chop和chomp函数区别:
**相同点:**可以删除标量后的最后一个字符
不同点:
1>,chop是删除标量的最后一个字符或数组中每个元素的最后一个字符;
2>,chomp是删除标量最后的换行符,只删除最后的换行符!!!没有换行符则不删除;
简单写法:
chomp ($text = <STDIN>); #读入,但不含换行符
分两步写:
t
e
x
t
=
<
S
T
D
I
N
>
;
c
h
o
m
p
(
text = <STDIN>; chomp (
text=<STDIN>;chomp(text);
二,获取要调用脚本的路径:
use File::Basename;
my $filepath = dirname(__FILE__);
print $filepath;
三,获取当前路径:
use Cwd;
my $dir = getcwd;
#$dir中即为当前目录的完整路径信息。
四,perl脚本内部调用(运行)perl脚本:
方式一:
my $ret=`perl 脚本文件`;
print "$ret";
注意:此方式等号后面是反引号(键盘左上角数字"1"左侧的那个按键)。
方式二:
system("perl 脚本文件");
方式三:
my $cmd = "perl 脚本文件";
system($cmd);
注意:三种方式脚本可以是相对路径也可以是绝对路径。
五:字符串的截取、拼接:
字符串截取:使用substr函数
$str = "hello perl";
$newStr = substr($str,0,4); #表示对str字符串下标从0开始,截取4个字符。
$newStr = substr($str,3); #表示对str字符串下标从3开始截取。
字符串拼接:使用"."拼接
$str1 = "hello";
$str2 = "world";
$newStr = $str1.$str2; #结果为"heloworld"。
六,perl变量作用域以及定义方式:
作用域:our 全局变量(包域) 定义:our $str=“hello”;
local 临时全局,可以将全局变量临时借用为局部 定义:local $str =“perl”;
my 私有(局部)变量,my创建的变量,存活于声明开始的地方,直到闭合作用域的结尾。
state 持久局部 定义:state $str =“world”;
注1:state仅能创建闭合作用域为子程序内部的变量。
注2:state是从Perl 5.10开始引入的,所以使用前必须加上use 5.010或更高版本指令。
注3:state可以声明标量、数组、哈希。但在声明数组和哈希时,不能对其初始化(至少Perl 5.14不支持。
注意:使用use strict指令强制规定必须声明变量。
变量详情见:https://blog.csdn.net/Henjay724/article/details/8457556?utm_medium=distribute.pc_relevant.none-task-blog-baidujs-2