<1> perl概述
[root@wx03 1]# cat a1.pl
$arr=[1,2,3,4,5,6];
print $arr->[4]."\n";
$hash={a=>1,b=>2,c=>3};
print $hash->{b}."\n";
$sub = sub {return "aaaaaaaaa\n"};
print $sub;
print "\n";
print &$sub;
print "\n"; [root@wx03 1]# perl a1.pl
5
2
CODE(0x251fd20)
aaaaaaaaa 复杂数据结构: [root@wx03 1]# cat a2.pl
$wife{"Jacob"}=["Leah","Rachel","Bilhah","Zilpah"];
print $wife{"Jacob"}->[2]."\n";
[root@wx03 1]# perl a2.pl
Bilhah [root@wx03 1]# cat a3.pl
$kids_of_wife{"Jacob"} = {
"Leah" => ["Reuben", "Simeon", "Levi", "Judah", "Issachar", "Zebulun"],
"Rachel" => ["Joseph", "Benjamin"],
"Bilhah" => ["Dan", "Naphtali"],
"Zilpah" => ["Gad", "Asher"],};
print $kids_of_wife{"Jacob"}->{Rachel}->[1]."\n";
[root@wx03 1]# perl a3.pl
Benjamin [root@wx03 1]# cat t1.pl
$var=5;
$var .=10;
print $var."\n"; [root@wx03 1]# perl t1.pl
510 ///
[root@wx03 1]# cat a5.pl
%grades;
open (GRADES ,test) || die;
while (my $line=<GRADES>){
my ($student,$grade) = split (/\s+/,$line);
$grades{$student} .=$grade ." ";
print $grades{$student}."\n";
}; use Data::Dumper;
$str=Dumper(%grades);
print "\$str is $str\n";
[root@wx03 1]# perl a5.pl
123
123 456
$str is $VAR1 = 'abc';
$VAR2 = '123 456 '; [root@wx03 1]# cat test
abc 123
abc 456 perl 中的真值: 1.除了""和"0"外,所有字符串都为true; 2.除0以外,所有数字都为true; 3.所有引用都为true; 4. 所有未定义值都为false 正则表达式: [root@wx03 1]# cat a7.pl
$var1="a:";
$var2="aa:";
$var3=":";
if ($var1 =~/[a-zA-Z]+:/){print "ok1\n"};
if ($var2 =~/[a-zA-Z]+:/){print "ok2\n"};
if ($var3 =~/[a-zA-Z]+:/){print "ok3\n"};
[root@wx03 1]# perl a7.pl
ok1
ok2
[root@wx03 1]# + 是一个特殊字符,表示"我们前面的内容出现一次或多次" [root@wx03 1]# cat a8.pl
$var1="a";
$var2="a1";
if ($var1 =~/a./){print "ok1\n"};
if ($var2 =~/a./){print "ok2\n"};
[root@wx03 1]# perl a8.pl
ok2 .号表示任意单个字符 [root@wx03 1]# cat a9.pl
$var1="a1";
$var2="1";
$var3="aaa1";
if ( $var1 =~ /a*1/ ){print "ok1\n";};
if ( $var2 =~ /a*1/ ){print "ok2\n";};
if ( $var3 =~ /a*1/ ){print "ok3\n";};
[root@wx03 1]# perl a9.pl
ok1
ok2
ok3 * 表示前面的项出现0次或多次 perl 贪婪匹配: [root@wx03 1]# cat a10.pl
$var="larry:abcdffwrwr:ddad:fsffsf34";
if ( $var =~/(.+:)/){print "\$1 is $1\n";};
if ( $var =~/(.*?:)/){print "\$1 is $1\n";};
[root@wx03 1]# perl a10.pl
$1 is larry:abcdffwrwr:ddad:
$1 is larry: .*? 取消贪婪匹配
<1> perl概述的更多相关文章
- Perl概述
@home = ("couch", "chair", "table", "stove"); 数组 数组.一个数组是多个标 ...
- Perl语言编程(大骆驼)
啰嗦几句 Perl的时代已经过去,现在年轻的同事们基本上都在用Python了.但个人认为单就生物信息文本处理而言,Perl语言是绝对够用的.最主要的是,前辈们搭建的流程大多数是Perl写的,因此,如果 ...
- perl 继承概述
<pre name="code" class="html">[root@wx03 test]# cat Horse.pm package Horse ...
- 【原创】Aspose.Words组件介绍及使用—基本介绍与DOM概述
本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html 本博客其他.NET开源项目文章目录:http://www.cnbl ...
- 【多端应用开发系列1.1.1 —— Android:使用新浪API V2】服务器Json数据处理——Json数据概述
[前白] 一些基础的东西本系列中就不再详述了,争取尽量写些必不可少的技术要点. 由于本系列把Web Service 构建放到了第二部分,Android项目就采用新浪微博API v2作为服务器端. [原 ...
- Aspose.Words组件介绍及使用—基本介绍与DOM概述
1.基本介绍 Aspose.Words是一个商业.NET类库,可以使得应用程序处理大量的文件任务.Aspose.Words支持Doc,Docx,RTF,HTML,OpenDocument,PDF,XP ...
- [HeadFirst-JSPServlet学习笔记][第一章:前言与概述]
第一章 前言与概述 web服务器做什么? 答:接收客户请求,然后向客户返回结果 web客户做什么? 答:此处客户指浏览器,web客户允许用户请求服务器上的某个资源,并向用户展现请求的结果. html ...
- 2.Perl基础系列之入门
官网提供的入门链接:http://perldoc.perl.org/perlintro.html 语法概述 Perl的安装步骤省略,直接去官网下载并按照提示安装即可. 如果Perl安装没问题,那么运行 ...
- perl5 第一章 概述
第一章 概述 by flamephoenix 一.Perl是什么?二.Perl在哪里?三.运行四.注释 一.Perl是什么? Perl是Practical Extraction and Re ...
随机推荐
- Java class文件分析工具 -- Classpy
Classpy Classpy是一个图形化的class文件分析工具,功能和javap类似,界面主要參考了Java Class Viewer: 为什么要又一次创造轮子? 写这个工具花了将近一周的时间.那 ...
- 《Java并发编程实战》第二章 线程安全性 读书笔记
一.什么是线程安全性 编写线程安全的代码 核心在于要对状态訪问操作进行管理. 共享,可变的状态的訪问 - 前者表示多个线程訪问, 后者声明周期内发生改变. 线程安全性 核心概念是正确性.某个类的行为与 ...
- java 如何自定义异常 用代码展示 真心靠谱
先建两个自定义的异常类 ChushufuException类 class ChushufuException extends Exception { public ChushufuException( ...
- 深入理解-HashMap
一.HashMap概述 HashMap 在家族中位置:实现了Map接口,继承AbstractMap类.HashMap 允许key/value 都为null. 二.HashMap存储结构 HashMap ...
- SolrCloud简介
原文地址:http://www.chepoo.com/solrcloud-introduction.html 一.简介 SolrCloud是Solr4.0版本以后基于Solr和Zookeeper的分布 ...
- cglib源码学习交流
背景 前段时间在工作中,包括一些代码阅读过程中,spring aop经常性的会看到cglib中的相关内容,包括BeanCopier,BulkBean,Enancher等内容,以前虽大致知道一些内容,原 ...
- 基于SOAP的xml网络交互心得
感谢小二同学将遇到的问题分享给我们,再此给以掌声.如果看不懂下面文章的建议查找一下HTTP协议的文艺,对HTTP协议要有个概念. XML网络交互心得 目录 一. xml解析 1.根路径下 2. ...
- php内存分析
1.一般来说,php倒不需要进行内存分析,但是遇到大循环时内存吃紧时就得要进行内存分析了,看看在哪里吃掉了内存. $m1 = memory_get_usage(); $m2 = memory_get_ ...
- ASP.NET给Table动态添加删除行,并且得到控件的值
ASP.NET给Table动态添加控件并且得到控件的值 由于跟老师做一个小的项目,可是我自己又不太懂js,所以一直为动态建立表格并且能动态的取值和赋值感到苦恼.起初在网上找到了一些js资源,解决了动态 ...
- Git 文件状态的转换
很好低使用git 文件的状态转换的了解是非常重要的. 文件转换状态其实可以分为四种: untracked:未跟踪,此文件在工作区中,但并没有加入git库,不参与版本控制. 通过”git add”,”g ...