Perl基础(1)chop与chomp的区别
chop是去掉字符串的最后一个字符
chomp是去掉“$/”指定的结尾符号
测试程序一:
[perl]
#!/bin/perl
$tmp = "sincere";
chop($tmp);
print "$tmp";
$tmp = "sincere";
chomp($tmp);
print "$tmp";
[/perl]
输出:
[code]
[sincerefly@localhost perl]$ perl chop-chomp
sinceresincere[sincerefly@localhost perl]$
[/code]
测试程序二:
[perl]
#!/bin/perl
$tmp = "sincere\n\n\n";
chop($tmp);
print "$tmp";
$tmp = "sincere\n\n\n";
chomp($tmp);
print "$tmp";
[/perl]
输出:
[code]
[sincerefly@localhost perl]$ perl chop-chomp2
sincere
sincere
[sincerefly@localhost perl]$
[/code]
结论:chop去掉了最后一个字符,chomp去掉了最后一个换行符号
测试程序三:
[perl]
#!/bin/perl
$/ = "";
$tmp = "sincere\n\n\n";
chop($tmp);
print "$tmp";
$tmp = "sincere\n\n\n";
chomp($tmp);
print "$tmp";
[/perl]
输出:
[code]
[sincerefly@localhost perl]$ perl chop-chomp3
sincere
sincere[sincerefly@localhost perl]$
[/code]
结论:当变量“$/”为空串时,chomp函数删除所有的换行标志
测试程序四:
[perl]
#!/bin/perl
$/ = "cere";
$tmp = "sincere\n";
chop($tmp);
print "$tmp";
$tmp = "sincere\n";
chomp($tmp);
print "$tmp";
[/perl]
输出:
[code]
[sincerefly@localhost perl]$ perl chop-chomp4
sincer
sin
[sincerefly@localhost perl]$
[/code]
输出时在print中加入换行,方便观察
结论:成功删除了变量“$/”指定的换行
注:
1,chomp($text=); 一般这样写来从终端读入不带换行的数据
2,“$/”不应该全局更改,并且在文件中使用完成后恢复原值是一个好习惯
Perl基础(1)chop与chomp的区别的更多相关文章
- Perl基础速成
本文是针对没有Perl基础,但想用perl一行式命令取代grep/awk/sed的人,用于速学Perl基础知识. Perl一行式系列文章:Perl一行式程序 perl的-e选项 perl命令的-e选项 ...
- Perl基础语法
一.脚本文件perl 代码可以写在一个文本文件中,以 .pl..PL 作为后缀.文件名可以包含数字,符号和字母,但不能包含空格,可以使用下划线(_)来替代空格.一个简单的Perl 文件名:rurun_ ...
- Java基础之comparator和comparable的区别以及使用
Java基础之comparator和comparable的区别以及使用 1: 区别: .Comparable类需要实现此接口,定义在类内,不利于扩展 2 .Comparator更灵活,可以随时自定义 ...
- Perl 基础语法
Perl 基础语法 Perl借用了C.sed.awk.shell脚本以及很多其他编程语言的特性,语法与这些语言有些类似,也有自己的特点. Perl 程序有声明与语句组成,程序自上而下执行,包含了循环, ...
- python 基础-文件读写'r' 和 'rb'区别
原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...
- Perl exists 函数和defined函数的区别
Perl exists 函数和defined函数的区别
- Perl 中 `cmd` 和system"cmd"的区别
在perl中,调用系统命令有两种形势,`cmd` 和system"cmd",他们主要的区别是`cmd`会获取返回结果,而system"cmd"会直接将结果输出到 ...
- chop 与 chomp 的对比
chop 截去最后一个字符,无论是什么字符 chomp 截去末尾的分隔符(\n),行分隔符由$/决定 $a="ab\n\n\n"; #截去多个空行. $/=&quo ...
- 2.Perl基础系列之入门
官网提供的入门链接:http://perldoc.perl.org/perlintro.html 语法概述 Perl的安装步骤省略,直接去官网下载并按照提示安装即可. 如果Perl安装没问题,那么运行 ...
随机推荐
- 原生js实现 常见的jquery的功能
原生选择器 充分利用 bind(this)绑定 <div id="box"> <ul> <li >111 </li> <l ...
- BP简单的理解神经网络
先用3类样本训练,在測试.. 刚開始学习的人有错的 地方,,请大家多多指导.. 一些好的博客: http://blog.csdn.net/starxu85/article/details/314353 ...
- KMP算法(转)
KMP算法 在介绍KMP算法之前,先介绍一下BF算法. 一.BF算法 BF算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配,若相等,则继续比较S的第二个 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----基本概念及操作
本节联练习主要有: 1.环境介绍 2.常用 Shell 命令及快捷键 3.Linux 使用小技巧 一.Linux 桌面环境介绍 相对于现在的 Windows 系统,UNIX/Linux 本身是没有图形 ...
- 3D数学学习笔记——笛卡尔坐标系
本系列文章由birdlove1987编写.转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24601215 1.3D数学 ...
- asp.net学习之GridView七种字段
原文:asp.net学习之GridView七种字段 asp.net中GridView绑定到数据源时,可以自动显示数据源的各个字段.只要设定其AutoGenerateColumns为TRUE即可.但这, ...
- Java代码优化(转)
前言 代码优化,一个很重要的课题.可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用, ...
- easyUI的combobox实现级联
先简介下combobox: easyUI重写了select,取而代之的是combobox,有例如以下几种方式能够创建一个combobox 1.使用select标签,并加上class="eas ...
- [Mac] Mac book pro互换SSD硬盘、生产启动U菜、TimeMachine恢复 小记
Mac book pro 硬盘故障.互换SSD硬盘.启动U磁盘生产 小记 2012新年买Mbp了.尽管各种功能都能用,但常常频繁的出现鼠标风火轮,已经下好的电影在本地播放时都会隔个几分钟卡一下. 拿到 ...
- 一个奇怪的注意事项TNS-12545 TNS-12560 TNS-00515
近来的reportDB无法从一开始就与系统收听,比较奇怪的现象. 由于server有听众的一个实例上正常启动,这是不是从开始监听器的实例手动启动是正常的.所以写下来未能找到离奇写的原因. 1.故障现象 ...