亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

perl里面的$|=1是什么意思?

perl里面的$|=1是什么意思?

鳳凰求蠱 2019-03-05 11:07:02
perl里面的$|=1是什么意思?
查看完整描述

3 回答

?
POPMUISE

TA貢獻1765條經驗 獲得超5個贊

$|就是一個變量啦,是perl的內置變量,默認情況下是0,如果設置為非0的話,表示當前的輸出不經過緩存立刻輸出,比如你print或者write一個文件,實際是需要經過緩存的,但是設置該變量非0后就不經過緩沖立刻輸出了

$locip =~ s/\./,/gi;是一個正則表達式匹配,對變量$locip進行替換,將$locip中的點(.)替換成逗號(,),g和i都是附加選項,g表示全局替換,就是所有的點(.)都替換成逗號(,),i是忽略大寫,這里沒有什么用

$_也是perl的內置變量,是perl中用的最多的默認變量,一般比如你寫一個循環:foreach (@my_array) { print $_; }
這個循環沒有指定變量,每次遍歷數組my_array的時候就把值賦給了$_,所以你這樣就可以把my_array數組中的每個元素都打印出來

查看完整回答
反對 回復 2019-03-30
?
人到中年有點甜

TA貢獻1895條經驗 獲得超7個贊

補充說明:$_ 是內置變量,給你一個最容易理解的例子:

while(<STDIN>) //從屏幕輸入,將輸入結果放到默認變量$_ 里面
{
print "$_"; // 打印變量里面的內容
}
如果寫成這樣
while($local=<STDIN>)
{
print "$local";
}
perl就會將從屏幕輸入的值給變量$local 而不是放到默認變量$_里面去

還有一點 $locip =~ s/\./,/gi; 這里面的 =~ 意思是與變量$locip里面的值匹配, 而不是與$_ 里面的值匹配
比如 while(/s\./,/gi) 這樣就是與$_ 里面的值匹配了。
"\"是 escape character 讓它后面的符號按照字面意義解釋,而不是特殊的含義,因為"."在表達式里面代表任意一個單個字符,但如果前面加上"\"則表示一個"點號"而不再代表單一一個字符了。



查看完整回答
反對 回復 2019-03-30
?
慕萊塢森

TA貢獻1810條經驗 獲得超4個贊

$|=1;表示清除緩存

s/\./,/gi 意思是把所有的.替換成,

$_是內置變量。你可以看看perldoc

查看完整回答
反對 回復 2019-03-30
  • 3 回答
  • 0 關注
  • 882 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號