PERL各个符号代表的意思 您所在的位置:网站首页 r语言双引号什么意思 PERL各个符号代表的意思

PERL各个符号代表的意思

2024-03-28 21:10| 来源: 网络整理| 查看: 265

@       数组                          $x{}   x名字前面是美元符号($),后面是花括号({}),则其为 hash 元素 %       要引用整个 hash,使用百分号(“ )作为前缀。前面几页中使用的 hash 的名字为%family_name。 $!      系统产生的一些可读的信息,也可能是出错的信息 $_     子函数参数变量自己本身 @_     子程序的私有变量 &x      调用子函数x     数据输入.如果没有指定文件名,则其从标准输入流中自动打开和关闭一系列文件进行读入

$- 当前页可打印的行数,属于Perl格式系统的一部分

$! 根据上下文内容返回错误号或者错误串 $” 列表分隔符 $# 打印数字时默认的数字输出格式 $$ Perl解释器的进程ID $% 当前输出通道的当前页号 $& 与上个格式匹配的字符串 $( 当前进程的组ID $) 当前进程的有效组ID $* 设置1表示处理多行格式.现在多以/s和/m修饰符取代之. $, 当前输出字段分隔符 $. 上次阅读的文件的当前输入行号 $/ 当前输入记录分隔符,默认情况是新行 $: 字符设置,此后的字符串将被分开,以填充连续的字段. $; 在仿真多维数组时使用的分隔符. $? 返回上一个外部命令的状态  my $ret = $? >>8 if($ret) error $@ Perl解释器从eval语句返回的错误消息 $EVAL_ERROR $[ 数组中第一个元素的索引号 $\ 当前输出记录的分隔符 $] Perl解释器的子版本号 $^ 当前通道最上面的页面输出格式名字 $^A 打印前用于保存格式化数据的变量 $^D 调试标志的值 $^E 在非UNIX环境中的操作系统扩展错误信息 $^F 最大的文件捆述符数值 $^H 由编译器激活的语法检查状态 $^I 内置控制编辑器的值 $^L 发送到输出通道的走纸换页符 $^M 备用内存池的大小 $^O 操作系统名 $^P 指定当前调试值的内部变量 $^R 正则表达式块的上次求值结果 $^S 当前解释器状态 $^T 从新世纪开始算起,脚步本以秒计算的开始运行的时间 $^W 警告开关的当前值 $^X Perl二进制可执行代码的名字

$_ 默认的输入/输出和格式匹配空间

@ARGV 传给脚本的命令行参数列表

@INC 在导入模块时需要搜索的目录列表 @ISA 数组中列出的类(包)表明了当前类的父类(parent class)或基类(base class)。它是Perl赖以实现继承的方式。@ISA数组中含有类(包)的列表,当Perl在当前类(包)中无法找到所需方法时,便会在该数组列出的类中查找。如果还是找不到的话,Perl还会搜索并调用AUTOLOAD函数。如果仍然找不到的话,Perl会在预定义的UNIVERSAL包中进行最后的搜索。UNIVERSAL类时所有包的全局基类,也是类继承机制中位于最顶层的类。 在通常的子例程调用过程中,并不会搜索@ISA数组。但如果用户以调用方法的语法来调用子程序的话,程序就会去搜索@ISA数组。   @ISA     = qw(Exporter Net::Cmd IO::Socket::INET);    vars 是一个Perl的pragma,用来预定义全局变量。这些预定义后的全局变量qw()列表中的在整个Perl文件中皆可使用,使用了use strict也不会报警: use vars qw($TELNET_IAC $TELNET_IP $TELNET_DM); ($TELNET_IAC,$TELNET_IP,$TELNET_DM) = (255,244,242); $-[0]和$+[0] 代表当前匹配的正则表达式在被匹配的字符串中的起始和终止的位置 |- 打开一个“输出到”管道,那么你就可以向你打开的这个文件句柄写数 -| 打开一个“来自”管道,那么你可以从这个文件句柄读取数据 #!/usr/bin/perl print $_.”\n”;#缺省输入。 print @_.”\n”;#函数参数 #局域变量 print $&.”\n”;#当字符串用于模式匹配时,字符串被分成了三部分:匹配以前的部分,匹配上的部分,匹配以后的部分。任何部分都可能是空,这个变量指最近一次匹配上的字符串。 print $’.”\n”;#匹配部分以后的部分。 print $`.”\n”;#最近一次匹配,匹配部分以前的部分。 print $+.”\n”;#最后一个圆括号中的子表达式匹配的部分。 print $*.”\n”;#缺省情况下,Perl 为了加快匹配速度,假设模式中不包括新行,也就是只执行单行匹配。如果要执行多行匹配,就要把此值设成 1。 print @+.”\n”;#这个数组保存当前匹配的最后成功子匹配的结尾的偏移量。$+[0]是整个匹配的偏移量。$+[1]是$1 结束的偏移量,$+[2]是$2 结束的偏移量。 print @-.”\n”;#$-[0] 是最后一个成功的匹配的开始的偏移量。$-[n]是第 n 个子模式的偏移量,或 undef,如果没有匹配上的话。$-[0]也可

以看成是整个匹配开始的偏移量。$-[1]是$1开始的地方,$-[2] 是$2 开始的地方,依次类推。 print

#输入、输出变量 print $..”\n”;#最近一次执行读操作的当前行数。显式的关闭文件句柄重置行数。 print $/.”\n”;#输入记录分隔符,缺省值是新行。 print $,.”\n”;#print操作的输出域分隔符。 print $\..”\n”;#print 操作的输出记录分隔符。通常用于省略换行符。 print $”.”\n”;#当数组转换成字符串时,元素缺省以空格分隔(例如,当打印数组时)。这个变量即代表这个分隔符,缺省是空格。 print $^L.”\n”;#当执行一个进纸动作时输出的字符。缺省是 \f。 print $:.”\n”;#就是目前可以作为折行的字符集合。缺省值是” \n“(也就是空白,换行字符,以及连字号)。 print $^A.”\n”;#格式化行的写收集器的当前值。 #错误变量

print $?.”\n”;#$CHILD_ERROR 包含了最近一次执行的外部程序结束状态。这些程序以办是通过管道,反小点 (”) 或system 函数执行的。 print $!.”\n”;#$OS_ERROR, $ERRNO 包含了系统的错误。如果用在数值的地方,就是系统错误码;如果用在字符串的地方,就是错误信息字符串。 print $^E.”\n”;#$EXTENDED_OS_ERROR 在某些平台,返回扩展错误信息。 print $@.”\n”;#$EVAL_ERROR 从上一个 eval 命令的 Perl 语法错误信息 #系统变量 print $$.”\n”;#运行当前脚本的 Perl 进程的 pid。 print $.”\n”;#当前进程的有效用户标识符。 print $(.”\n”;#当前进程的实际组标识符(gid)。 print $).”\n”;#当前进程的有效组标识符。 print $0.”\n”;#正在执行的 Perl 脚本的文件名称。这个参数与执行时输入有关 print $[."\n";#数组中第一个元素的序号或子串中第一个字符的序号。缺省是 0。 print $].”\n”;#返回版本号,加上补丁级别除以 1000。 print $M.”\n”;#$M 的内容能用作紧急内存池,以便 Perl 出out-of-memory 错误时使用。使用$M 要求 Perl 进行特殊的编译。 print $^F.”\n”;#最大的系统文件描述符,通常是 2。 print $^I.”\n”;#原地编辑扩展的当前值。可使用 undef 禁止原地编辑。 print $^W.”\n”;#警告开关的当前值,真或假。 print $^T.”\n”;#当前脚本开始运行的时间。以秒为单位,从 1970年开始。 print $^O.”\n”;#编译 Perl 本身时的操作系统名称。 print $^X.”\n”;#二进制 Perl 执行文件的名称。 print $^D.”\n”;#调试标志的当前值。 print $^P.”\n”;#是否打开调试。 print $ARGV.”\n”;#当从< >读入时的当前文件名。 #其它 print @ARGV.”\n”;#命令行参数。 print $ARGV.”\n”;#当前文件的文件名,代表标准输入。 print @INC.”\n”;#寻找 Perl 脚本的地址表。 print %INC;#通过 do 或 requir 包含的文件名的目录。

print $#ARGV 数组长度-1

perl语言的常用符号       --------------------------------------------------------------------------------    --学习笔记    #∶ perl语言的注释符,该行其后的内容不执行。      $∶匹配定位模式,表示最后一个字符得匹配,用于常规表达式(正则表达式),置于两个/之间最后面。      $_/∶ perl运算的缺省变量,可以视为缓冲区。 例如∶foreach(reverse @a){print;}就使用了缺省变量。      +、-、*、/∶ perl语言的运算符——加、减、乘、除。      +∶组合模式,表示一个或多个它前面的字符,等价于{1,},用于常规表达式(正则表达式),置于两个/之间。      -∶ 字符列表中间的连接线。 例如∶A-Z,表示A到Z之间的所有字符。      +=、-=、*=、/=、%=、|=、&=、^=、~=、=、**=、.=∶ perl语言的运算符,修改和替代。      .∶(1)perl语言的运算符,位非。(2)perl语言的字符串连接运算符。(3)模式匹配字符,表示除了\n之外的任意字符。用于常规表达式(正则表达式),置于两个/之间。例如 $name=~s/\W.*//;(找到第一个非单词字符,将从这里开始的到字符串尾的所有字符全部删除。)      ..∶perl语言的表运算符,范围运算符。 例一∶@number=0..9;#该语句创建了一个表,从0到9的整数。 例二∶foreach $i(0..9){print "$i\n";}      ,∶(1)perl语言的顺序计值符。(2)perl语言的表构造符。      *∶组合模式,表示零个或多个它前面的字符(或字符类),等价于{0,},用于常规表达式(正则表达式),置于两个/之间。      **∶perl语言的乘方运算符。      ^∶匹配定位模式,表示第一个字符得匹配,用于常规表达式(正则表达式),置于两个/之间最前面。      ?∶组合模式,表示零个或一个它前面的字符,等价于{0,1},用于常规表达式(正则表达式),置于两个/之间。例∶ $str="I xxxxx full";$str=~s/x+/am/g;这时$str="I am full" $str="I xxxxx full";$str=~s/x+?/am/g;这时$str="I amamamamam full"      !∶perl语言的运算符——负。      !~∶perl语言的字符串运算符,将一个变量绑定到模式匹配,取非前两个运算符比较简单。      !=∶perl语言的比较运算符,不等于。用于比较数值。      &∶perl语言的运算符——位与。      &&∶perl语言的运算符——逻辑与。      %∶perl语言的运算符——模除(取整除后的余数)。      ;∶ 分隔符——终止一条语句。      :∶ 分隔符——指明标号语句。      ++∶ 运算符——增一。      -- ∶运算符——减一。      = ∶运算符——赋值。      ==∶perl语言的比较运算符,等于。用于比较数值。      =~:perl语言的字符串运算符(相配运算符),将一个变量绑定到模式匹配。 例一∶$var="china";    print($var=~/ina/)?TRUE:FALSE; 该例确定$var变量里是否包含ina模式,输出结果为TRUE。 例二∶$var=~s/\+/ /g; 该例中$var变量中所有+(用\+表示)都被替换成空格。      >=∶perl语言的比较运算符,大于等于。用于比较数值。      > ∶perl语言的比较运算符,大于。用于比较数值。     



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有