PERL代码摘录
1. 语法与数据结构###
#嵌套哈希的赋值和取值
$HashTable{$key} = [@Array] #这个是赋值
@Array = @{ $HashTable{$key} } # 这个是取值
#Perl 按照哈希值排序
#如果是按ASCII码(字符串)排序,则代码如下:
foreach my $key ( sort { $hash{$a} cmp $hash{$b} } keys %hash ) {
my $value = $hash{$key};
# do something with ($key, $value)4 }
#如果是按数字大小排列,则代码如下:
foreach my $key ( sort { $hash{$a} <=> $hash{$b} } keys %hash ) {
my $value = $hash{$key};
# do something
2. 时间和字符串###
- 获取系统时间,按格式化字符串输出
use Time::Local;
my $timestamp=time;
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($timestamp);
my $y = $year + 1900;
my $m = $mon + 1;
#输出
print sprintf("%04d%02d%02d%02d",$y,$m,$mday,$hour);
3. 文件和目录操作###
# 获取本程序的文件名、路径和后缀名
use File::Basename;
my ($myFile,$myPath,$mySuffix) = fileparse($0,qr{.pl});
# 获取文件夹下文件列表
my $RootDir = "E:/Research/IMSTB/20110408/";
my @files=glob("$RootDir"."*.xls");
# 判断一个文件or目录是否存在
(-e $dirReport) or die "文件路径不存在!\n";
#复制文件
use File::Copy ;
if( -e $fpath) {
# 复制文件
copy($fpath,$rootDir."/data") or warn "Could not copy files\n";
}else {
die "$fpath not found! $!\n";
}
4. 函数###
- 实现动态函数名
my %h_sub;
$h_sub{MSCHO} = \&mscho;
$h_sub{MAPHO} = \&mapho;
#调用
do $h_sub{$tidx}->($para);
5. 文件读写###
- 一次性读取文本文件所有内容
my @alarm_tmp = <IH0>;
$alarm_text{$tidx} = \@alarm_tmp;
6. 系统与环境###
#Perl 获取Windows当前登录的用户名
use Win32;
$username = Win32::LoginName();
print "User name: $username\n";
创建于:2014.06.27
最后更新:2015.01.24
PERL代码摘录的更多相关文章
- 在eclipse中运行perl代码,需要配置的插件以及方法
Eclipse配置正则表达式 网址:http://www.cnblogs.com/itech/archive/2010/02/23/1671676.html perl的环境配置以及在Eclipse中安 ...
- 在vi中使用perltidy格式化perl代码
格式优美的perl代码不但让人赏心悦目,并且能够方便阅读. perltidy的是sourceforge的一个小项目,在我们写完乱七八糟的代码后,他能像变魔术一样把代码整理得漂美丽亮,快来体验一下吧!! ...
- 在vim中使用perltidy美化perl代码
来源: http://www.cnblogs.com/itech/archive/2013/02/18/2915279.html 格式优美的perl代码不但让人赏心悦目,而且可以方便阅读. perlt ...
- PERL高效代码摘录 - 数组
1. 2个数组找不同 ,,,,,,); ,); %seen=(); foreach(@a_hast_g){ ; } @unique=grep($seen{$_},@a_cl_g); } map { $ ...
- wndows程序设计之书籍知识与代码摘录-封装一个类似printf的messagebox
//----------------------------------------- //本程序展示了如何实现MessageBoxPrintf函数 //本函数能像printf那样格式化输出 //摘录 ...
- wndows程序设计之书籍知识与代码摘录-获取视屏显示器像素等参数GetsystemMetrics
以下的代码段用于获取视屏显示器的高度宽度,以像素为单位. int sxScreen, cyScreen; cxScreen = GetSystemMetrics (SM_CXSCREEN); cySc ...
- perl代码调试
perl调试教程 一.DESCRIPTIONA (very) lightweight introduction in the use of the perl debugger, and a point ...
- 使用B::Deparse模块对perl代码反汇编
Perl用很多默认操作和习惯用法,如果对某些代码不确定,perl编译器的真实理解方式,可以用Deparse模块反汇编看一下. 比如下面代码: while(<STDIN>){ print & ...
- PYTHON代码摘录
文件处理 #典型的读取文件代码 row_data = {} with open('PaceData.csv') as paces: column_heading = paces.readline(). ...
随机推荐
- MySQL和PostgreSQL 导入数据对照
在虚拟机上測评了下MySQL 和 PostgreSQL 的各种LOAD FILE方式以及时间. 由于是虚拟机上的測评,所以时间仅仅做參考,不要太较真, 看看就好了.MySQL 工具: 1. 自带 ...
- UITableView实现格瓦拉飞天投票模块
格瓦拉目前来说动画效果确实做的还比较好,虽然不是说很炫但做到精致,这次就模仿了它投票的模块.其实想到要实现它还是有很多方法,不过这次我还是采用了苹果自带控件UITableView简简单单来实现它,再次 ...
- iOS开发——高级技术&密码锁功能的实现
密码锁功能的实现 一个ios手势密码功能实现 ipad/iphone 都可以用 没有使用图片,里面可以通过view自己添加 keychain做的数据持久化,利用苹果官方KeychainItemWrap ...
- typedef的使用1——引入
#include <stdio.h> #include <string.h> //#define _CRT_SRCURE_NO_WARNING #pragma warning( ...
- 关于增强for循环
1 增强for循环增强for循环是for的一种新用法!用来循环遍历数组和集合. 1.1 增强for的语法for(元素类型 e : 数组或集合对象) {}例如:int[] arr = {1,2,3};f ...
- 基于 JQUERY 网页 banner
demo.html <html> <head> <title>demo</title> <link href="css/PaPaBann ...
- Android开发之Service
什么是Service? Android中的服务与Activity不同,他是不能与用户进行交互,自己也不能启动在后台运行的程序,当我们退出应用时,Service应用并没有结束,它仍然在后台运行. 例子: ...
- C# 批量插入表SQLSERVER SqlBulkCopy往数据库中批量插入数据
#region 帮助实例:SQL 批量插入数据 多种方法 /// <summary> /// SqlBulkCopy往数据库中批量插入数据 /// </summary> /// ...
- PL/SQL Developer 使用中文条件查询时无数据的解决方法
PL/SQL Developer 使用中文条件查询时无数据,这是由于字符集的不一致导致的. 执行以下sql命令:select userenv('language') from dual; 显示:SIM ...
- ora 32021 设置参数时参数值长度超过255处理办法
alter system set db_file_name_convert='AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA-.' scope=spfi ...