濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > perl中chomp的使用介紹(chop和chomp函數(shù)區(qū)別)

perl中chomp的使用介紹(chop和chomp函數(shù)區(qū)別)

熱門標(biāo)簽:電話機(jī)器人哪里有賣 河南虛擬外呼系統(tǒng)公司 上海企業(yè)外呼系統(tǒng) 惠州龍門400電話要怎么申請(qǐng) 外呼電信系統(tǒng) okcc外呼系統(tǒng)怎么調(diào)速度 熱門電銷機(jī)器人 智能機(jī)器人電銷神器 萬(wàn)利達(dá)百貨商場(chǎng)地圖標(biāo)注

例子:

復(fù)制代碼 代碼如下:

#!/bin/perl
print "Please input an string and a number by order!\n"; 
$the_string=>; 
$the_numb=>; 
print "The result is \n"; 
print "$the_string"x"$the_numb";

結(jié)果:
The result is  
my 
my 
my 
my 
my

這里的問(wèn)題便是沒(méi)有使用chomp引起的。

來(lái)看加入chomp的情況:

復(fù)制代碼 代碼如下:

#!/bin/perl
print "Please input an string and a number by order!\n"; 
chomp($the_string=>); 
chomp($the_numb=>); 
print "The result is \n"; 
print "$the_string"x"$the_numb";

結(jié)果:
The result is  
mymymymymy

如果字符串結(jié)尾有換行符,chomp 可以去掉它。這基本上就是它能完成的所有功能,如下例:
$text = “a line of text/n”; #也可以由STDIN>輸入
chomp($text); #去掉換行符(/n)。
它非常有用,基本上你的每一個(gè)程序都會(huì)用到它。如你將知道,這是將字符串末尾換行符去掉的最好方法?;赑erl 中的一條基本原則:在需要使用變量的地方,可以使用賦值表達(dá)式來(lái)代替。我們有更簡(jiǎn)單的使用chomp 的方法。Perl 首先做賦值運(yùn)算,再使用這個(gè)變量。因此使用chomp 的最常用方法是:
chomp ($text = STDIN>); #讀入,但不含換行符

$text = STDIN>;
chomp ($text); #同上,但用兩步完成

第一眼見(jiàn)到時(shí),第一種組合的方法看起來(lái)復(fù)雜些。如果把上述其看成兩步操作,讀一行再chomp,那寫成兩個(gè)語(yǔ)句的方法
看起來(lái)自然些。如果將其看作一個(gè)操作,讀入一行但不包括換行符,那寫成一個(gè)語(yǔ)句的方法更恰當(dāng)。由于絕大多數(shù)Perl 程序員使用第一種寫法,你也應(yīng)該使用它。
chomp 是一個(gè)函數(shù)。作為一個(gè)函數(shù),它有一個(gè)返回值,為移除的字符的個(gè)數(shù)。這個(gè)數(shù)字基本上沒(méi)什么用:
$food = STDIN>;
$betty = chomp $food; #得到值1
如上,在使用chomp 時(shí),可以使用或不使用括號(hào)()。這又是Perl 中的一條通用規(guī)則:除非移除它們時(shí)含義會(huì)變,否則括號(hào)是可以省略的。
如果結(jié)尾有兩個(gè)或兩個(gè)以上的換行符,chomp 僅去掉一個(gè)。如果沒(méi)有,那什么也不做,返回0。

chop和chomp函數(shù)區(qū)別

chop函數(shù)負(fù)責(zé)刪除標(biāo)量型標(biāo)量的最后一個(gè)字符或數(shù)組中每個(gè)元素的最后一個(gè)字符,并返回修改后的值。chop一般用于刪除程序接收到的輸入行末尾的換行符,這些輸入行可以來(lái)自STDIN、文件或者命令置換結(jié)果。
chomp函數(shù),負(fù)責(zé)刪除標(biāo)量型變量中的最后一個(gè)字符,或者數(shù)組中每個(gè)字的最后一個(gè)字符,并保證只有該行末字符是換行符時(shí)才進(jìn)行刪除操作。它會(huì)返回刪除后的字符數(shù)目。使用chomp函數(shù)來(lái)代替chop,能避免刪除換行符之外的其它字符。
例1:chop
#!/usr/bin/perl
$v = 'Flowers';
$r = chop($v);
print "$v (without $r)\n";
運(yùn)行結(jié)果
[root@localhost per]# ./1-16.pl
Flower (without s)
例2:chomp
#!/usr/bin/perl
print "User name: ";
$name = STDIN >;
chomp $name;
print "Your user name is : $name\n";
運(yùn)行結(jié)果
[root@localhost per]# ./1-18.pl
User name: Bill
Your user name is : Bill

標(biāo)簽:周口 淮安 綿陽(yáng) 周口 綏化 秦皇島 合肥 百色

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《perl中chomp的使用介紹(chop和chomp函數(shù)區(qū)別)》,本文關(guān)鍵詞  perl,中,chomp,的,使用,介紹,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《perl中chomp的使用介紹(chop和chomp函數(shù)區(qū)別)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于perl中chomp的使用介紹(chop和chomp函數(shù)區(qū)別)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    富宁县| 贵南县| 电白县| 隆化县| 葫芦岛市| 茌平县| 延津县| 麻栗坡县| 巧家县| 芒康县| 丹东市| 志丹县| 黔江区| 嵊州市| 容城县| 淳化县| 克什克腾旗| 南安市| 峨山| 建阳市| 枣阳市| 迁安市| 鄂托克旗| 沈丘县| 德州市| 涿州市| 八宿县| 易门县| 北辰区| 固阳县| 崇明县| 莆田市| 太仓市| 彩票| 闽清县| 孝义市| 错那县| 宾阳县| 科尔| 绥化市| 新邵县|