perl备忘
List Operators:
sort reverse grep map
my @castways = sort qw( first second third); # qw 给单词自动加上双引号
grep: 从list中一个一个的取出,然后添加到$_中,然后通过测试标量的值,为true的话添加到输出列表中
some example:
my @lunch_choices = grep &is_edible($_), @gilligans_posessions
my @results = grep EXPR,@input_list;
my @bigger_than_10 = grep $_ > 10 , @input_numbers;
map: 也是通过一些规则改变列表,感觉map可以增加列表的元素,而grep更注重过滤
my @input_numbers = (1 2 3 4 5 6 );
my @result = map $_ + 100 , @input_numbers;
my @result = map { $_ , 3* $_} @input_numbers;
Reference:
my @array = ( 1 2 3 4 );
my $ref = \@array;
$ref->[0] 调用方式 ,多级箭头可以简化 $ref->[0]->[1]->[2] == $ref->[0][1][2]
@$ref 又可以变回数组形式
正则表达式的高级形式:
末尾加x,可以给正则表达式换行,提高可读性
?#可以给正则表达式做注释
表达式 |
方向 |
说明 |
---|---|---|
(?=xxx) |
正向预搜索(向右) |
正向预搜索,判断当前位置右侧是否能匹配指定表达式 |
(?!xxx) |
正向预搜索否定,判断当前位置右侧是否不能够匹配指定表达式 |
|
(?<=xxx) |
反向预搜索(向左) |
反向预搜索,判断当前位置左侧是否能够匹配指定表达式 |
(?<!xxx) |
反向预搜索否定,判断当前位置左侧是否不能够匹配指定表达式 |
同时不匹配括号中的内容。
perl备忘的更多相关文章
- Nmap备忘单:从探索到漏洞利用(Part 4)
这是我们的Nmap备忘单的第四部分(Part 1. Part 2. Part 3).本文中我们将讨论更多东西关于扫描防火墙,IDS / IPS 逃逸,Web服务器渗透测试等.在此之前,我们应该了解一下 ...
- Python中利用函数装饰器实现备忘功能
Python中利用函数装饰器实现备忘功能 这篇文章主要介绍了Python中利用函数装饰器实现备忘功能,同时还降到了利用装饰器来检查函数的递归.确保参数传递的正确,需要的朋友可以参考下 " ...
- metasploit 常用命令备忘
metasploit 常用命令备忘 MSFconsole Commands-------------------------------------24show exploits 查看所有exp ...
- java正则表达式备忘
最近框架和爬虫上常要处理字符串匹配和替换的场景,备忘. 非贪婪模式 比如要匹配html文本中的连接,例如a href="www.abc.com/xyz/o"需要替换为a href= ...
- GIS部分理论知识备忘随笔
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.高斯克吕格投影带换算 某坐标的经度为112度,其投影的6度带和3度带 ...
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
- Vi命令备忘
备忘 Ctrl+u:向文件首翻半屏: Ctrl+d:向文件尾翻半屏: Ctrl+f:向文件尾翻一屏: Ctrl+b:向文件首翻一屏: Esc:从编辑模式切换到命令模式: ZZ:命令模式下保存当前文件所 ...
- ExtJs4常用配置方法备忘
viewport布局常用属性 new Ext.Viewport({ layout: "border", renderTo: Ext.getBody(), defaults: { b ...
- [备忘] Automatically reset Windows Update components
这两天遇到Windows 10的更新问题,官方有一个小工具,可以用来修复Windows Update的问题,备忘如下 https://support.microsoft.com/en-us/kb/97 ...
随机推荐
- [BTS] Deploy Command
BizTalkDeploymentTools.AddResource.bat @Echo OFF SET ApplicationName=%~1 SET ComponentType=%~2 SET C ...
- lucene字典实现原理
http://www.cnblogs.com/LBSer/p/4119841.html 1 lucene字典 使用lucene进行查询不可避免都会使用到其提供的字典功能,即根据给定的term找到该te ...
- paip.提升性能---mysql 优化cpu多核以及lan性能的关系.
paip.提升性能---mysql 优化cpu多核以及lan性能的关系. 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http:/ ...
- paip.提升效率--僵尸代码的迷思
paip.提升效率--僵尸代码的迷思 僵尸代码是指你的代码库里被注释掉的那部分代码, 很少去使用它,就像僵尸一样, 看雷kill-the-zombies-in-your-code ========== ...
- shell切割日志脚本
#!/bin/bash set -e source /etc/bashrc cd `dirname $` linenum=`wc -l userinfolist.txt | awk '{print $ ...
- C# .net中获取台式电脑中串口设备的名称
来源:http://www.cnblogs.com/hshuzhao/p/4028856.html?utm_source=tuicool&utm_medium=referral .情境: 做项 ...
- Activiti 查询流程定义
package com.mycom.processDefinition; import java.io.InputStream; import java.util.List; import java. ...
- Windows 8.1 with update 官方最新镜像汇总
Windows 8.1 with update 官方最新镜像汇总,发布日期: 2014/12/16,Microsoft MSDN. 镜像更新日志: 12/29:32位大客户专业版中文版 12/24:6 ...
- CentOS7安装mysql数据库
安装完Centos7,迫不急待的想安装mysql数据库,却没想到走了很多弯路,后来经过查资料,才知道了在Centos7中用MariaDB代替了mysql数据库. 准确来说,本文的标题有点误导的意思,本 ...
- HBase + Kerberos 配置示例(一)
用过hbase的朋友可能都有过这样的疑问,我写一个java client,好像就提供了zookeeper quorum地址就连上hbase了,那么是不是存在安全问题?的确是,如何解决?hbase中引入 ...