找到 157 篇文章 關於 Perl

Perl 中的匹配運算子

Mohd Mohtashim
更新於 2019-11-29 11:57:31

1K+ 次瀏覽

Perl 中的匹配運算子 m// 用於將字串或語句與正則表示式匹配。例如,要將字元序列“foo”與標量 $bar 匹配,可以使用如下語句:示例 線上演示#!/usr/bin/perl $bar = "This is foo and again foo"; if ($bar =~ /foo/) {    print "第一次匹配";    } else {    print "第一次不匹配"; } $bar = "foo"; if ($bar =~ /foo/) {    print "第二次匹配";    } else {    print "第二次不匹配"; }當執行上述程式時,… 閱讀更多

Perl 中的檔案控制代碼特殊變數

Mohd Mohtashim
更新於 2019-11-29 11:55:01

197 次瀏覽

Perl 中有各種與檔案控制代碼相關的特殊變數。我們已在下面的表格中列出了它們:$|如果設定為非零值,則在當前選擇的輸出通道上的每次寫入或列印後強制執行 fflush(3)。$OUTPUT_AUTOFLUSH$%當前選擇的輸出通道的當前頁碼。$FORMAT_PAGE_NUMBER$=當前選擇的輸出通道的當前頁長(可列印行)。預設為 60。$FORMAT_LINES_PER_PAGE$-當前選擇的輸出通道頁面上剩餘的行數$FORMAT_LINES_LEFT$~當前選擇的輸出通道的當前報表格式的名稱。預設為檔案控制代碼的名稱。$FORMAT_NAME$^當前選擇的輸出通道的當前頁首格式的名稱…… 閱讀更多

Perl 中的正則表示式特殊變數

Mohd Mohtashim
更新於 2019-11-29 11:52:35

633 次瀏覽

Perl 中有各種正則表示式特殊變數。我們已在下面的表格中列出了它們:$digit包含上次匹配模式中相應括號集匹配的文字。例如,$1 匹配先前正則表示式中第一組括號中包含的內容。$&上次成功模式匹配匹配的字串。$MATCH$`上次成功模式匹配之前匹配的字串。$PREMATCH$'上次成功模式匹配之後匹配的字串。$POSTMATCH$+上次搜尋模式匹配的最後一個括號。如果您不知道哪個…… 閱讀更多

Perl 中的全域性特殊變數型別

Mohd Mohtashim
更新於 2019-11-29 11:51:07

321 次瀏覽

Perl 中有各種全域性特殊變數。我們已根據其用法和性質將它們列在不同的塊中:全域性陣列特殊變數@ARGV包含用於指令碼的命令列引數的陣列。@INC包含要查詢 Perl 指令碼以由 do、require 或 use 結構進行評估的位置列表的陣列。@F當給出 -a 命令列開關時,輸入行被分割到的陣列。全域性雜湊特殊變數%INC包含每個已透過 do 或 require 包含的檔案的檔名的條目。%ENV包含您當前環境的雜湊。%SIG用於設定訊號的雜湊…… 閱讀更多

Perl 中的 confess 函式

Mohd Mohtashim
更新於 2019-11-29 11:49:28

1K+ 次瀏覽

Perl 中的 confess 函式類似於 cluck;它呼叫 die,然後列印一直到原始指令碼的堆疊跟蹤。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    confess "Error in module!"; } 1;當從如下指令碼呼叫時:−use T; function();它將產生以下結果:−Error in module! at T.pm line 9    T::function() called at test.pl line 4

Perl 中的 croak 函式

Mohd Mohtashim
更新於 2019-11-29 11:47:44

3K+ 次瀏覽

Perl 中的 croak 函式等效於 die,只是它向上報告一個級別的呼叫者。與 die 一樣,此函式還在向 STDERR 報告錯誤後退出指令碼:−package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    croak "Error in module!"; } 1;當從如下指令碼呼叫時:−use T; function();它將產生以下結果:−Error in module! at test.pl line 4與 carp 一樣,關於根據 warn 和 die 函式包含行和檔案資訊的基本規則適用。

Perl 中的 cluck 函式

Mohd Mohtashim
更新於 2019-11-29 11:46:36

814 次瀏覽

Perl 中的 cluck 函式是一種增強的 carp,它遵循相同的基本原理,但也列印導致呼叫該函式的所有模組的堆疊跟蹤,包括有關原始指令碼的資訊。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp qw(cluck); sub function {    cluck "Error in module!"; } 1;當從如下指令碼呼叫時:−use T; function();它將產生以下結果:−Error in module! at T.pm line 9    T::function() called at test.pl line 4

Perl 中的 carp 函式

Mohd Mohtashim
更新於 2019-11-29 11:44:40

911 次瀏覽

Perl 中的 carp 函式基本上等效於 warn,它將訊息列印到 STDERR,而不會實際退出指令碼並列印指令碼名稱。package T; require Exporter; @ISA = qw/Exporter/; @EXPORT = qw/function/; use Carp; sub function {    carp "Error in module!"; } 1;當從如下指令碼呼叫時:−use T; function();它將產生以下結果:−Error in module! at test.pl line 4

Perl 模組中的錯誤

Mohd Mohtashim
更新於 2019-11-29 11:42:46

149 次瀏覽

在使用 Perl 程式設計時,我們應該能夠處理兩種不同的情況:報告模組中的錯誤,該錯誤引用模組的檔名和行號 - 這在除錯模組時很有用,或者當您特別想要引發與模組相關的錯誤而不是與指令碼相關的錯誤時。報告模組中引用的呼叫者資訊的錯誤,以便您可以除錯導致錯誤的指令碼中的行。以這種方式引發的錯誤對終端使用者很有用,因為它們突出了與呼叫指令碼的原始行相關的錯誤。warn 和 die…… 閱讀更多

Perl 中的 unless & die 函式

Mohd Mohtashim
更新於 2019-11-29 11:41:22

902 次瀏覽

Perl 中的 unless 函式與 if 的邏輯相反:語句可以完全繞過成功狀態,並且僅在表示式返回 false 時才執行。例如:−unless(chdir("/etc")) {    die "Error: Can't change directory - $!"; }unless 語句最好用於當您只想在表示式失敗時引發錯誤或替代方案時。當在一行語句中使用時,該語句也有意義:−die "Error: Can't change directory!: $!" unless(chdir("/etc"));這裡,只有在 chdir 操作失敗時我們才會 die。die 函式die 函式的工作方式與 warn 類似,只是它還會呼叫 exit。在…… 閱讀更多

廣告
© . All rights reserved.