1. Perl中变量的常用表示

   ${var} 相当于 $var

   $Dog::days  在Dog包里面的变量$days

   $#days  @days 的最后一个索引

   $days->[]  $days 引用的数组的的第3个元素

   $days[][]  多维数组

   $days{}{'Feb'}  多维哈希

   $days{,"Feb"}  多维哈希仿真 emulation

   @days[,,]  数组@days的对应3个元素的片段,也可写作 @days[..]

   @days{'Jan','Feb'}  包含 $days{'Jan'} 和 $days{'Feb'}的值的散列片段, 如果是写作 %days{'Jan','Feb'}  则同时包含键和值. 但是不能用 $days{'Jan','Feb'},因为是列表上下文.

2. Perl中的名字空间(namespace)

  分为符号表(symbol table) 和词法作用域(lexical scope)两种

  符号表: 全局散列, 存储存放全局变量的符号表的记录

  词法作用域: 未命名的中间结果暂存器, 不会存在于任何符号表,  只是附着在程序的一块代码后面.

3. Perl 中的引起构造

 
常用 通用 含义 可否内插
' ' q/ / 直接量字符串 No
" " qq/ / 直接量字符串 Yes
`` qx/ / 执行命令 Yes
() qw/ / 单词列表 Yes
/ / m/ / 模式匹配 Yes
s/ / / s/ / / 模式替换 Yes
y/ / / tr/ / / 字符转换 No
"  " qr/ / 正则表达式 Yes

这些简写是为了方便写出更容易阅读的代码

$single = q!I said, "you said, 'she said it.'" !;
$double = qq(Can't we get some "good");

Perl语言编程>>学习笔记2的更多相关文章

  1. Perl语言编程>>学习笔记

    1. 使用反引号可以调用外部程序并返回程序的输出, 如  $cwd = `pwd`; 2. Perl 中的变量类型之间的区别主要是单数和复数; 单数变量称为标量 $scalar , 复数变量称为数组 ...

  2. Linux C语言编程学习笔记 (1)进程控制入门

    想进行Linux系统开发已经很久了,一直没有付诸实践.今日终于开始学习Linux下的C语言编程,研究一天,终于大概弄明白了Linux系统进程管理的一些基本概念和编程方法,总结下来以方便大家学习和自己实 ...

  3. 【C语言编程学习笔记】利用462字节代码实现雅虎logo ACSII 动画!

    ACSII 动画演示:   不过本文介绍的是另一个作品:c 代码实现雅虎 logo ACSII 动图. 运行后,你将会看到:   它是一个 20fps.抗锯齿的 Yahoo! logo ASCII 动 ...

  4. linux下的c语言编程学习笔记

    视频参看csdn学院王阳和下面的linux环境下c语言编程基础相当的经典,其中王阳的视频讲的很好,相当的经典 编译hellogcc.c需要依赖/home目录下的头文件 为了避免同一个文件被includ ...

  5. 【C语言/C++编程学习笔记】:通俗易懂讲解 - 链表!学不会?不存在的!

    C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...

  6. 多线程编程学习笔记——async和await(一)

    接上文 多线程编程学习笔记——任务并行库(一) 接上文 多线程编程学习笔记——任务并行库(二) 接上文 多线程编程学习笔记——任务并行库(三) 接上文 多线程编程学习笔记——任务并行库(四) 通过前面 ...

  7. 转 网络编程学习笔记一:Socket编程

    题外话 前几天和朋友聊天,朋友问我怎么最近不写博客了,一个是因为最近在忙着公司使用的一些控件的开发,浏览器兼容性搞死人:但主要是因为这段时间一直在看html5的东西,看到web socket时觉得很有 ...

  8. 并发编程学习笔记(4)----jdk5中提供的原子类及Lock使用及原理

    (1)jdk中原子类的使用: jdk5中提供了很多原子类,它会使变量的操作变成原子性的. 原子性:原子性指的是一个操作是不可中断的,即使是在多个线程一起操作的情况下,一个操作一旦开始,就不会被其他线程 ...

  9. MySQL基础之事务编程学习笔记

    MySQL基础之事务编程学习笔记 在学习<MySQL技术内幕:SQL编程>一书,并做了笔记.本博客内容是自己学了<MySQL技术内幕:SQL编程>事务编程一章之后,根据自己的理 ...

随机推荐

  1. 20165226 2017-2018-4 《Java程序设计》第8周学习总结

    20165226 2017-2018-4 <Java程序设计>第8周学习总结 教材学习内容总结 第十二章 创建线程的方式有三种,分别是: - 继承Thread类创建线程,程序中如果想要获取 ...

  2. Big Water Problem

    链接:https://www.nowcoder.com/acm/contest/77/B来源:牛客网 Big Water Problem 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ ...

  3. 【转】给TD添加滚动条的方法

    TD本身不允许出现滚动条,而会总动撑大,所以要想加滚动条需要另外在TD内添加一个容器如:DIV. 例子: <table style="width: 450px; height: 360 ...

  4. Java 版本6下载大全

    Oracle 官方 JDK6 下载地址: 基本包含所有的JDK6版本. 需要登注册相应的账户登录到Oracle官网~ http://www.oracle.com/technetwork/java/ja ...

  5. ApacheOFBiz的相关介绍以及使用总结(二)

    OFBiz的实体配置   实体定义文件一般存放位置是在对应模块的entity文件夹下面,在该模块对应的ofbiz-component.xml配置文件中加入一行,用来声明实体定义文件路径:   < ...

  6. [lua]判断nginx收到的是否json

    local post_data = ngx.req.get_body_data() --[[ngx.log(ngx.ERR, 'post data:', post_data)]] local ok, ...

  7. IDA Pro 权威指南学习笔记(十二) - IDA 中的注释

    注释有助于以一种更高级的方式描述汇编语言指令序列 IDA 提供了几种不同类型的注释,每种注释适用于不同的目的 使用 Edit -> Comments 命令的选项,可以为反汇编代码清单中的任何一行 ...

  8. Docker垃圾回收机制

    由Docker垃圾回收机制引发的一场血案 AlstonWilliams 关注 2017.04.01 19:00* 字数 1398 阅读 253评论 0喜欢 0 今天早晨,在我还没睡醒的时候,我们团队中 ...

  9. 基于3D卷积神经网络的行为识别:3D Convolutional Neural Networks for Human Action Recognition

    简介: 这是一片发表在TPAMI上的文章,可以看见作者有余凯(是百度的那个余凯吗?) 本文提出了一种3D神经网络:通过在神经网络的输入中增加时间这个维度(连续帧),赋予神经网络行为识别的功能. 相应提 ...

  10. 基于OpenCV读取摄像头进行人脸检测和人脸识别

    前段时间使用OpenCV的库函数实现了人脸检测和人脸识别,笔者的实验环境为VS2010+OpenCV2.4.4,opencv的环境配置网上有很多,不再赘述.检测的代码网上很多,记不清楚从哪儿copy的 ...