记下一点文字,为自己曾经所学留一点点痕迹。
PERL很强大,支持多平台,,,&%$^&*(&^%。
现在使用的基本是都是版本5。
很简单易学的:
主要内容安排如下:
一,PERL的基本知识
- 看看官方文章,写写Hello Perl,基本就可以开始学习了。
- PERL的变量
- $ 单变量:声明,赋值
- @数组变量 :声明,空,数字,字符串,混合,赋值,指定某几个元素赋值;
- $"数组输出特殊分隔符号变量:输出分隔符
- %哈希变量:
- PERL的操作符号
- 加、减、乖、除、模、幂、加加、减减
- AND(&&)、OR(||)、NOT(!)
- 二进制的 与&、或|、非!、与或^、与非、左移<<、右移>>
- 数字关系符号:等于==、不等于!=、大于、小于、大于等于、小于等于、比较<=>返回1(左大右),0(左等右),-1(左小右)
- 字符串也能比较:大于gt、小于lt、大于等于ge、小于等于le、比较cmp 返回1(左大右),0(左等右),-1(左小右)
- 条件取值: CONDITION-PART ? TRUE-PART : FALSE-PART
- 字符串符号:连接符号点(.)、重复串符号x(x) 后面跟数字表示重复的次数。
- 范围符号:二个点(..),二点左右的可以是数字,也可以是字符。
# "$"符号表示单变量 #var Number and String print "demo of Number and String "; $number = 20; $str = "Real Number is " ; print ("$str $number .\n"); # "@”符号表示数组变量 # " $" "符号是特殊变量 # var Array print "demo of Array "; $line = 0; @emptyArray = (); #表示空数组 @numberArray = (1..15); #表示1到15的数字,可以连续的二个点代替中间的数字,三个点也行 @stringArray = ("string1\,","string2\,","string3\."); #表示字符串数组 @mixedArray =("stringy\,","stringx\,",3,5); #表示混合的数组 print "here is and empty array:".@emptyArry. "nothing here. \n"; print ("Print array in single line @numberArray"); print "\n"; $" = ","; #如果输出数组中间的符号想变化一下,用 $" 进行设置 print ("@numberArray"); print "\n"; foreach (@numberArray){ print ($numberArray[$line]); #使用数组时,"$"符号代替"@"符号 print "\n"; $line = $line +1 ; }; # "%"符号表示哈希变量 %ages = ('zhao' => 28, 'qian' => 35, 'sun' => 29, 'li' =>99,); print ( uc(li).. " is $ages{li} years old\n");
- 函数
- 函数声明:sub 函数名
- 函数变量:sub 函数名(变量)
- 函数变量赋值:$_[序号]
- 函数变量计数:变量 = @_
- 函数调用: 函数名(变量)
- 函数返回:return
- 常用字符串函数:
- 常用字符串函数:变大写UC(uppercase)、大写首字母Ucfirst、小写lc(lowercase)、小写首字母lcfirst、字符串长度length(str)、切分split(pattern,str,limit)、子串substr(原串,返回起始位置)、返回匹配的最后一个位置rindex(原串,匹配串)
- 常用数组函数:删除delete(key)、exists(key)、连成串 join(str,array)返回一个符串、pop(array)、排序sort等。
- 语句与控制语句
- 语句块一般以{ }作为开始和结束。当然,一个声明也可以是一个语句块。
- 控制语句与其它语言差不太多,下面分了不同控制语句进行了示例。
# 语句和控制语句示例 # if语句示例 $a = 1; $b = 12; $c = 12; if($a == $b){ print ("a == b : $a == $b" ); print "\n"; }elsif($a == $c){ #小心,此处的"elsif"不是字符串ELSE 和IF print ("a == c : $a == $c" ); print "\n"; }else { print ("a != b : $a != $b"); print "\n"; } # while语句示例 do{ print("a = $a \n"); $a++; } while ($a <=$b); $a = 1; while($a <= $b){ print("a = $a \n"); $a++; }continue { print ("after while continue."); } ; # until语句示例 $a = 5; do{ print("a = $a \n"); $a++; } until ($a <=$b); # for 语句示例 $a = 5; for ($a=5;$a<$b;$a++){ print("a = $a \n"); }; # foreach语句示例 @arrayA = ("A","B","C","I"); $a =0; foreach(@arrayA){ print ("array element$a value is $arrayA[$a] .\n"); $a ++; } # last语句示例 print ("DEMO of last .\n"); @arrayA = ("A","B","C","I"); $a =0; foreach(@arrayA){ if($arrayA[$a]eq "B"){ print ("array element$a value is $arrayA[$a] .\n"); last; } $a ++; print("after last. \n"); } print("exit from block. \n"); # next语句示例 print ("DEMO of next .\n"); @arrayA = ("A","B","C","I"); $a =0; foreach(@arrayA){ if($arrayA[$a] eq "B"){ print ("array element$a value is $arrayA[$a] .\n"); $a ++; next; }else { print ("array element$a value is $arrayA[$a] .\n"); $a ++; } }; # redo 语句示例 print("What is your name? \n"); $name = <STDIN>; #标准输入,从键盘。 chop($name); if (! length($name)) { print("Msg: Zero length input. Please type your name .\n"); redo; #重新执行当前语句块 } print("Thank you, " . uc($name) . "\n"); # goto 语句示例 #基本不用,不浪费时间写示例了。
- 指针ref
- 使用文件资源
文件操作比较简单,主要有:
- 打开文件:open、sysopen(与open模式相当,只是以文字方式进行文字模式的打开模式授权)
- 关闭文件:close
-
删除文件:unlink
- 重命名文件:rename
-
打开方式:
> or w Creates, Writes, and Truncates >> or a Writes, Appends, and Creates +< or r+ Reads and Writes +> or w+ Reads, Writes, Creates, and Truncates +>> or a+ Reads, Writes, Appends, and Creates
-
目录操作:创建目录mkdir、删除目录rmdir、改变目录chdir等
opendir DIRHANDLE, EXPR # To open a directory readdir DIRHANDLE # To read a directory rewinddir DIRHANDLE # Positioning pointer to the begining telldir DIRHANDLE # Returns current position of the dir seekdir DIRHANDLE, POS # Pointing pointer to POS inside dir closedir DIRHANDLE # Closing a directory.
- 正则表达式
- 特殊变量
- 异常控制
- 面向对象
- PERL模块库
- 如何DEBUG
- PERL的常用命令行
- PERL与网络编程
- Socket、Mail、Ftp、Http、NNTP (新闻相)
- 什么是CGI(Common Gateway Interface)
- 表单处理(HTML)
- PERL开发Web Service
- 有哪些好的网络资源
相关推荐
英语音标简记法是学习英语发音的重要工具,它帮助我们准确地读出单词,提升听力和口语能力。本文将详细介绍几种常见的英语音标简记方法,并通过举例帮助理解。 首先,我们来看“去尾法”。这种方法适用于那些以元音...
简记个人博客网站源码为博主现有博客网站,前端采用LayUI框架,此分享版本为asp + access。所有功能齐全,欢迎使用。 使用方法:上传至空间或服务器,通过IIS发布网站即可。 演示地址:...
### 练习简记第一期知识点总结 #### 练习1——聚函数 **题目描述:** 本题考察了SQL语言中的聚合函数及其使用规则。具体来说,题目给出了一条SQL查询语句,并询问该语句是否合法以及其含义。 **SQL语句:** ```...
【简记个人博客网站源码 v2.10.01.rar】是一个包含个人博客网站完整源码的压缩包,版本号为v2.10.01,它主要用于搭建和自定义个人博客平台。这个源码可能由前端界面、后端服务器逻辑以及数据库结构组成,适用于那些...
497476974884240简记.apk
【USACO课文学习简记1】 USACO(USA Computing Olympiad)是美国计算机奥林匹克竞赛,旨在培养高中生的编程和算法能力。这篇学习简记主要涵盖了四个章节,分别是Ad Hoc Problems(杂题)、Complete Search(完全...
七年级英语音标简记法PPT教案.pptx
本文将围绕“Java字符集编码简记”这一主题,深入探讨相关知识点,并结合标签“源码”和“工具”,探讨在实际开发中如何运用和处理字符编码问题。 首先,我们需要理解字符集的概念。字符集是一系列符号的集合,例如...
这篇简记涵盖了计算机组成原理中的多个重要知识点,主要包括程序控制I/O、中断嵌套、内存层次结构、平均访问时间计算、磁盘容量计算、指令格式设计、存储器组织、数据依赖性、指令流水线以及缓存操作。 1. **程序...
高中历史之历史百科简记美国“飞虎队”在云南素材
关于正则表达式的语法,Java遵循Perl风格,支持多种元字符和预定义字符类,如`\d`代表数字,`\w`代表单词字符(字母、数字和下划线),`\s`代表空白字符等。还可以使用量词(如`*`, `+`, `?`和`{n,m}`)来指定重复...
【知识点详解】 1. 盐类的溶解性规律: ...这些简记规律和知识点是高中化学学习的基础,对于理解和解决化学问题至关重要。理解并熟练掌握这些规则有助于提升解题能力,并为大学化学学习打下坚实基础。
中考知识要点简记归纳之人教版初一数学知识点总结.pdf
标题中的“log4jdbc-log4j2配置简记”指的是在Java开发中使用log4jdbc-log4j2库来监控和记录SQL查询的过程。log4jdbc是一个开源项目,它允许开发者通过日志系统来追踪数据库操作,而log4j2是log4j的升级版,提供了更...
title: GAMESS2013编译使用简记- 科2014-02-23 21:14:14 初稿2014-03-08 12:09:09 修订编译解压 tar -
线性规划(Linear Programming,简称LP)是一种优化技术,用于在满足一组线性约束的情况下,最大化或最小化一个线性目标函数。它是运筹学的一个关键分支,对解决实际生活中的资源分配问题有着广泛的应用。...
这篇博客文章标题为“2013-6-3珠海移动暑假实习面试简记”,从标题我们可以推测,本文作者分享了自己在2013年6月3日参加珠海移动公司暑假实习面试的经历和感悟。这是一篇关于求职经验、面试技巧以及可能遇到的问题的...
(1)分类记录日常收入和支出数据,包括金额、用途、日期、分类等信息;能够增加、删除等,可以支持侧滑删除。 (2)显示月、日收支流水记录,显示当月、当日收支总额; (3)按周、月、年进行汇总形成结果。...
在JavaServer Pages (JSP) 技术中,七大标准动作是开发动态网页的重要组成部分。这些动作提供了在页面上操作数据、控制流程和与服务器交互的功能。以下是对JSP七大标准动作的详细解释: 1. **** ...
此篇文字没有包含完成编程任务的所有过程和细节,也就是说可大胆忽略或脑补不清晰或断节之处。这篇文字记录的是 第一次从头到尾构建C程序工程过程中所涉及到的 有助于程序更合理的一些技术或编程规范。...