zoukankan      html  css  js  c++  java
  • perl学习笔记一

    标量数据

    标量:数字、字符。可以存储在标量变量中也可以从文件和设备中读取。

    数字:所有数字内部格式相同——双精度浮点数。

    浮点数直接量:程序员在程序中直接键入的数字。

    整数直接量:61298040283768==61_298_040_283_768;

    操作:

    字符串:字符串长度没有限制。

    usr utf8;

    单引号内的字符串直接量:除了单引号和反斜线字符外,单引号内的所有字符都表示自身。

    双引号内的字符串直接量:

    字符串操作符:连接操作.  特殊的字符串重复操作符——x。

    "fred" x 3=="fredfredfred"。

    perl内置警告功能:用use warning;或者 $perl -w my_program或者#!/usr/bin/perl-w。

    更加详细的问题描述:use diagnostics;在perldiag文档中列有简要警告信息和详细诊断说明。

    如果把'12fred34'当数字用,perl就会发出警报 'Argument "12fred" isn't numeric.'

    虽然发出了警报,但perl仍然会按照默认规则把'12fred34'转换成12。

    内插问题:进行内插时,Perl会尽可能使用最长且合法的变量名称。要是你想在内插的值后直接输出字母 数字 下划线,可能会碰上麻烦。

    解决方法比较简单,和shell脚本一样,Perl里面我们可以用一对花括号将变量名括起来避免歧义,也可以将字符串拆分成两半,在利用链接操作符拼接起来。

    代码点(code point)???

    操作符:

    布尔值:

    上面还隐藏着一个技巧,字符串'0'和数字0是同一个标量值,所以Perl会将他们一视同仁。也就是说,字符串'0'是唯一被当成假的非空字符串。

    获取用户输入

    <STDIN>

    <STDIN>读入时会将最后的回车也读进去。如果需要去掉可以用:chomp()操作去掉。

    chomp()操作符:将字符串末尾的换行符去掉。chomp()一般用作连用如:

    chomp($text=<STDIN>);

    undef值:将undef当作数字用,则其为0;如果把其当作字符串来用,则其值为空字符串。

    既然undef作为数字时会被视为0,我们的累加器可以构造成如下(sum不需要初值):

    同理也可以做一个字符串累加器。

    defined函数:行输入操作符<STDIN>有时会返回undef。在一般情况下返回一行文本,但若没有更多输入,比如读到文件尾(end_of_file)时,就需要用undef来表示这个状况。要判断某个字符串是不是空串需要用defined函数。

    #!/usr/bin/perl
    $madonna=<STDIN>;
    if(defined($madonna)){
        print "The input was $madonna.
    ";
    }
    else{
        print "NO input available.
    ";
    }
    View Code
  • 相关阅读:
    HTML5 图片预览
    ubuntu JAVA 安装
    跟着老猫来搞GO内建容器Map
    面试造火箭系列,栽在了cglib和jdk动态代理
    跟着老猫来搞GO,"面向对象"
    跟着老猫来搞GO内建容器slice
    跟着老猫来搞GO,基础进阶
    JavaScript中利用doucument.writeline()方法预生成代码的小技巧
    javascript学习记录
    你的逻辑性强吗?
  • 原文地址:https://www.cnblogs.com/lukexwang/p/4626917.html
Copyright © 2011-2022 走看看