Perl,一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。Perl借取了C、sed、awk、shell 脚本语言以及很多其他程序语言的特性,其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。
printf函数可以格式化输出字符串 用法: printf FILEHANDLE FORMAT, LIST printf FORMAT, LIST 例如: printf函数先格式化字符串再输出到指定文件或当前缺省文件中,如:  printf OUTFILE (“You owe me %8.2f", $owing); 此语句取出变量$owing的值并替换掉串中的%8.2f,%8.2f是域格式的例子,
项目里面用到expect登录一台主机 口令是BI_wgjk_#@! 用   #$exp->send('BI_wgjk_#@!'."/n");    #错误   #$exp->send('BI_wgjk_#/@!'."/n");  #正确   $exp->send("BI_wgjk_#///@!/n");    #正确 可以看到expect对于perl的特殊字符@ 的处理,不是透明的 即使用了单引号
单引号:单引号和反斜线(/)字符除外,单引号内所有字符都代表它们本身。要表示反斜线时,需要连续两个反斜线,要表示单引号本身,则将反斜线接着单引号。    双引号:和单引号内的字符串一样,它也是一连串的字符,不过是被括在一对双引号里面。但是现在反斜线具有完整的能力,可用来表示控制字符或通过八进制及十六进制来表示任何字符。
9.1 正则表达式的三种形式 首先我们应该知道 Perl 程序中,正则表达式有三种存在形式,他们分别是: 匹配:m/<regexp>;/ (还可以简写为 /<regexp>;/ ,略去 m) 替换:s/<pattern>;/<replacement>;/ 转化:tr/<pattern>;/<replacemnt>;/ 这三种形式一般都和 =~ 或 !~ 搭配使用(其中 "=~" 表示相匹配,在整条
  使用DBI的方法: --------------------------------------------------------------------- use DBI; --------------------------------------------------------------------- 注意:特定的DBD 级的模块不需要包括use 行,因为在与服务器进行连接时,
使用PERL脚本生成PDF输出 - [perl] 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://xufish.blogbus.com/logs/35754517.html 引言    文档的页面显示和打印效果一直是困扰人们的一个大问题。虽然我们可以在一种程序中打开其它程序的输出文档,但是显示效果往往大相径庭。即使使用同一种软件,如果操作平台或打印机不同的话,实际的
Perl语言的文字处理模式 - [perl] 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://xufish.blogbus.com/logs/35754521.html Perl语言的文字处理模式(Regular Expression)   如果在Unix中曾经使用过sde、awk、grep这些指令的话,相信对于Perl语言中的文字处理模式(Regular Expr
http://bbs.linuxsky.org/thread-8294-1-1.html
作 者: Dave Cross 发 表:August 10, 2004 原 名: Perl Command-Line Options 原 文:http://www.perl.com/pub/a/2004/08/09/commandline.html 译 者: "Qiang":qiang Perl 有很多命令行参数. 通过它, 我们有机会写出更简单的程序. 在这篇文章里我们来了解一些常用的参数. S
一、Perl中的命令行参数: Perl提供了一个特殊的内置数组@ARGV来存放用户从命令行输入的参数;功能跟C/C++的命令行参数一样,但是实现上不太一样;Perl中定义的命令行参数不包含perl命令和perl命令后面的perl程序文件名,即:不包含“perl 程序文件名”,也就是说,数组@ARGV中存放的全都是用户在命令行上输入的参数,不包含“perl 程序文件名”;从“ perl 程序文件名”
http://www.oioj.net/blog/user1/1713/archives/2005/29557.shtmlTeodor Zlatanov(tzz@iglou.com)程序员,Northern Light2001 年 4 月那些将 Perl 用作编程语言的人经常忽视了:Perl 用作命令行操作的快速而又难看的脚本编制引擎时是很有用的。通过命令行,Perl 仅用一行就可以实现大多数其它
如果用perl来实现C的数据结构struct,请使用模块Class::Struct. 以下为一简单示例: -------------------------------------------------------------------- use Data::Dumper; use Class::Struct; use IO::File; struct Test =>{     s => '$
用perl实现了Tree的数据结构,使用Class::Struct来实现,以下为代码: use Data::Dumper; use Class::Struct; struct Node =>{     left  => 'Node',     value => '$',     right => 'Node', }; $root = Node->new; add($root,$_) for (5,
之前用struct实现的Tree不够灵活,重新使用hash来实现,更加灵活而且可以更改节点,进而实现平衡二叉树。 以下为程序代码: use Data::Dumper; my $tree = {}; add($tree,$_) for (5,7,1,4,9,6,0,9,100,20,30,21,60); print Dumper $tree; LMR($tree,$tree->{root}); RM
perl函数集 一、进程处理函数 1、进程启动函数 2、进程终止函数 3、进程控制函数 4、其它控制函数 二、数学函数 三、字符串处理函数 四、标量转换函数 五、数组和列表函数 六、关联数组函数 一、进程处理函数 1、进程启动函数 函数名 eval 调用语法 eval(string) 解说 将string看作Perl语句执行。 正确执行后,系统变量$@为空串,如果有错误,$@中为错误信息。 例子
今天用Perl实现了发送邮件,需要用Perl Package Manager下载了Net-SMTP_auth模块 use Net::SMTP_auth; $smtp = Net::SMTP_auth->new('mail.freelynet.com', Hello => 'freelynet.com', Debug => 1); $smtp->auth('LOGIN', 'name', 'pass
今天,处理文本时候,提取信息,出现了一个结构,使得要么是单词A,要么是单词B,这时候,就需要用到或的逻辑,在正则怎么构造呢?这个东西叫做候选项,可以构造如下结构 /Jim|Tom|Tim/#匹配三个人名 /(Ji|To|Ti)m/#再次匹陪三个人名,提取()到$1 /(?:Ti|To|Ji)m/# 还是匹配三个人名,不提取到$1 参考文献:   Perl 语言编程(第三版)P217
open   FILE_1, "> > file1.txt "; open   FILE_2, "> > file2.txt "; open   FILE_3, "> > file3.txt "; print   FILE_1   "OK/n ";   print   FILE_2   "NO/n ";   print   FILE_3   "YES/n ";   close   FILE_1;
TCP: server端: #!/usr/bin/perl -w use Socket; use IO::Handle; socket(SOCK,AF_INET,SOCK_STREAM,getprotobyname("tcp")); #setsockopt(SOCK,SOL_SOCKET,SO_REUSEADDR,1); my $addr=sockaddr_in(3000,INADDR_ANY);
教你如何在Perl下连接Access数据库   本文教你如何在Perl下连接Access数据库。 一. 安装Win32-ODBC模块 步骤1: 从TOOLS栏目中下载Win32-ODBC.zip,下载完后用winzip解开到一个temp目录,共有三个文件: Readme Win32-ODBC.ppd Win32-ODBC.tar.gz 步骤2: 在DOS窗口下,temp目录中运行下面的DO
只要我有时间,你的需求,我帮你! Bash、Ksh、Perl都可以,只要你把需求说清楚,发邮件给我,我帮你写脚本。不收取任何报酬。 或者你的脚本有问题,需要定位问题也行。总之,与脚本相关的问题,在我能力范围,我都可以尽量帮你。 我的邮箱:havent_bao@sina.cn QQ:31525874   反正闲着也是闲着……
在root提示符号下,输入perl -MCPAN -e 'install "IO::All"'
依据传统,关于计算机语言的书籍,应当以“Hello,world”这个程序开始。下面是其Perl 版本: #! /usr/bin/perl print “Hello,word!/n”; 我们假设你已经把它输入到文本编辑器中。(别担心这个程序的含义以及它如何执行。你将很快知道)。可以将它以你喜欢 的任何名字命名。Perl 不需要任何特别的文件名字或后缀名,但最好不要使用后缀名◆。有些系统中需要像.pl
#! /usr/bin/perl   @lines= `perldoc –u –f atan2`;   foreach(@lines){     s//w<([^>]+)//U$1/g;     print; }   第一行是#!这一行,#!行和程序的可移植性相关,需要找到每台机器的存放地点。幸运的是,通常都被放在/usr/bin/perl 或/usr/local/bin/perl 中。 如果不是
在英语以及许多其它的语言中,需要区别单数和复数。作为一门由语言学家发明的语言,Perl 也是类似的。同一般情况一样,Perl 也有数据类型—标量◆。标量是Perl 中最简单的数据类型。大多数的标量是数字(如255 或3.25e20)或者字符串 (如hello◆或者盖茨堡地址)。你也许把数字和字符串看作不同的事物,但Perl 几乎以相同的观点来看待它们。 ◆这个概念和数学或者物理学中的标量(一个单独
2.1 数字 虽然标量在大多数情况下不是数字就是字符串,现在我们最好还是将它们分开来看待。我们首先讨论数字,再讨论字符串。 2.1.1 所有数字内部的格式一致 在下面几段中,你将看到整数(如255,2001 等)和浮点数(有小数点的实数,如3.14159,1.35x1025),但在内部,Perl 都把 它们当作双精度浮点数来处理◆。这就是说在Perl 内部没有整数值。程序中的整数被当做等价的浮点数
2.2 字符串 字符串是一串字符(如hello)。字符串可能是字符的任意组合◆。最短的字符串不含任何字符。最长的字符串,可以填满 整个内存。这符合Perl 的哲学,只要有可能就不加任何内嵌的限制。通常字符串是可打印字符,数字,标点符号的序列(从 ASCII 32 到ASCII 126)。但,Perl 中字符串可以包含任意字符,意味着利用字符串(string)你可以创建,遍历,操作二进制 数据,而利
2.2.3 字符串操作符 字符串可由. 操作符连接(是的,只是一个点) 。它不会改变任何字串,就像2+3 不会改变2 或3 一样。串联之后的字符串 可供以后使用: #concat print "hello"."world"; # 同于"helloworld" print "hello”".''."world"; #同于"hello world" print 'hello world'."/n";
当程序中包含可能的错误时,可以要求Perl 警告你。运行程序时,可以在命令行中使用–w 这个参数把警告打开: $ perl–w my_program 或者,如果一直都需要警告(warning),可以在#! 这一行加上-w,如: #! /usr/bin/perl –w   这条命令甚至在non-Unix 系统中也有效,由于在这些系统中通常与Perl 的具体路径关系不大,因此可如下书写   #! /u
标量变量可以存放一个标量值。标量变量的名字由一个美圆符号($ )后接Perl 标识符:由字母或下划线开头,后接字母, 数字,或者下划线。或者说由字母,数字和下划线组成,但不能由数字开头。大小写是严格区分的:变量$Fred 和变量$fred 是不同的。任意字母,数字,下划线都有意义,如: $a_very_long_variable_that_ends_in_1 和变量: $a_very_long_v