加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Perl

发布时间:2020-12-15 23:47:50 所属栏目:大数据 来源:网络整理
导读:在perl语言中,几个特殊而常用的符号:??? q??是单引号?? qq?是双引号?? qw?单词列表引号? qr?正则表达式引号?? qx?反引号?? 其中qq,qw又较为常用。?? qq{foobar}的意思为意思为双引号字符串,可内插变量,相当于? "foobar" ?? qw{foo?bar}的意思为用空格分
  1. 在perl语言中,几个特殊而常用的符号:???
  2. q??是单引号??
  3. qq?是双引号??
  4. qw?单词列表引号?
  5. qr?正则表达式引号??
  6. qx?反引号??
  7. 其中qq,qw又较为常用。??
  8. qq{foobar}的意思为意思为双引号字符串,可内插变量,相当于?"foobar"??
  9. qw{foo?bar}的意思为用空格分解字符串,得到列表,相当于如下语句??
  10. split('?','foo?bar')?得到的结果是'foo','bar'
  11. q?和?qq?运算符的特点:??
  12. q?和?qq?必须是一个标识符,而不是标识符的部分。例如:??
  13. q?(abc)??????用?()?作为分界符??
  14. q(abc)???????用?()?作为分界符??
  15. q?xabcx??????用?x?作为分界符??
  16. 都是合法的,??
  17. 而qxabcx?就会被当作是一个标识符来处理,有谁会想到?qxabcx?居然是一个?q?运算式呢???
  18. ?q?和?qq?后面的空格并不会影响语法,但是任何非空字符(不是空格、不是?TAB?字符、不是换行符)则会被当作界限符来使用。??
  19. 如果?q?和?qq?使用一些特殊的符号的时候,??
  20. 则必须配对。比如:<?只能和?>;?在一起用来当作界限符,而不能只用两个?<?作为

q{}的妙用

在使用XPath获取xml node属性的时候,可以用之,比如想获取属性为zdd的node。xpath写法如下:

/html/body/dl[@class='commitlist']

因为这里面有@,所以不能用双引号,又由于有单引号,如果使用单引号则需要转义,像下面这样:

my $path = '/html/body/dl[@class='commitlist']';

看起来比较乱,用q{}解决就好多了。

my $path = q{/html/body/dl[@class='commitlist']}

pop 操作将数组的最后一个元素取出并返回
push 操作和pop相反,将一个元素(或者一列元素)加在数组的末尾。

unshift 和 shift 对一个数组的开头进行操作(数组的左端有最小下标的元素)
@array=qw#dino fred barney#;
$m=shift (@array);#$m得到“dino”,@array现在为(“fred”,“barney”)
$n=shift @array;#$n得到”fred”,@array现在为(“barney”)
shift @array;#@array现在为空 
$o=shift @array;#$o得到undef,@arry仍为空
unshift(@array,5);#@array现在为(5)
unshift@array,4;#@array现在为(4,5)

chop函数会砍掉字符串变量的最后一个字符,并返回砍掉的字符。?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读