找到 157 篇文章 關於 Perl

Perl 中的物件和類是什麼?

Mohd Mohtashim
更新於 2019年11月29日 12:18:19

122 次瀏覽

本文從 Perl 如何處理物件的角度解釋了三個主要術語:物件、類和方法。Perl 中的**物件**僅僅是對知道自己屬於哪個類的某種資料型別的引用。物件作為標量變數中的引用儲存。因為標量只包含對物件的引用,所以相同的標量可以在不同的類中儲存不同的物件。Perl 中的**類**是一個包,其中包含建立和操作物件所需的方法。Perl 中的**方法**是一個子例程,它使用該包進行定義。傳遞給…… 閱讀更多

使用 Perl 傳送帶有附件的電子郵件

Mohd Mohtashim
更新於 2019年11月29日 12:15:51

2K+ 次瀏覽

如果要使用 Perl 傳送帶有附件的電子郵件,則以下指令碼可以實現此目的:#!/usr/bin/perl use MIME::Lite; $to = 'abcd@gmail.com'; $cc = 'efgh@mail.com'; $from = 'webmaster@yourdomain.com'; $subject = '測試郵件'; $message = '這是 Perl 指令碼傳送的測試郵件'; $msg = MIME::Lite->new( From => $from, To => $to, Cc => $cc, Subject => $subject, Type => 'multipart/mixed' ); # 新增文字訊息。 $msg->attach( Type => 'text', Data => $message ); # 指定檔案作為附件。 $msg->attach(Type => 'image/gif', Path => '/tmp/logo.gif', Filename => 'logo.gif', ... 閱讀更多

使用 Perl 傳送 HTML 訊息

Mohd Mohtashim
更新於 2019年11月29日 12:14:02

569 次瀏覽

如果要使用 sendmail 傳送 HTML 格式的電子郵件,只需在電子郵件的標題部分新增 Content-type: text/html,如下所示:#!/usr/bin/perl $to = 'abcd@gmail.com'; $from = 'webmaster@yourdomain.com'; $subject = '測試郵件'; $message = '這是 Perl 指令碼傳送的測試郵件'; open(MAIL, "|/usr/sbin/sendmail -t"); # 電子郵件標題 print MAIL "To: $to"; print MAIL "From: $from"; print MAIL "Subject: $subject"; print MAIL "Content-type: text/html"; # 電子郵件正文 print MAIL $message; close(MAIL); print "郵件傳送成功";

使用 Perl 傳送純文字訊息

Mohd Mohtashim
更新於 2019年11月29日 12:12:41

260 次瀏覽

如果您在 Linux/Unix 機器上工作,則可以在 Perl 程式中簡單地使用 sendmail 實用程式來發送電子郵件。這是一個可以將電子郵件傳送到給定電子郵件 ID 的示例指令碼。只需確保 sendmail 實用程式的給定路徑正確即可。對於您的 Linux/Unix 機器,這可能有所不同。#!/usr/bin/perl $to = 'abcd@gmail.com'; $from = 'webmaster@yourdomain.com'; $subject = '測試郵件'; $message = '這是 Perl 指令碼傳送的測試郵件'; open(MAIL, "|/usr/sbin/sendmail -t"); # 電子郵件標題 print MAIL "To: $to"; print MAIL "From: $from"; print MAIL "Subject: $subject"; # 電子郵件正文 print MAIL $message; close(MAIL); ... 閱讀更多

Perl 中的 \G 斷言

Mohd Mohtashim
更新於 2019年11月29日 12:10:09

275 次瀏覽

Perl 中的 \G 斷言允許您從上次匹配發生的位置繼續搜尋。例如,在下面的程式碼中,我們使用了 \G,以便我們可以搜尋到正確的位置,然後提取一些資訊,而無需建立更復雜的單個正則表示式:示例 線上演示 #!/usr/bin/perl $string = "時間是:12:31:02 4/12/00"; $string =~ /:\s+/g; ($time) = ($string =~ /\G(\d+:\d+:\d+)/); $string =~ /.+\s+/g; ($date) = ($string =~ m{\G(\d+/\d+/\d+)}); print "時間:$time,日期:$date"; 當執行上述程式時,它會產生以下結果:時間:12:31:02,日期:4/12/00 \G 斷言是…… 閱讀更多

Perl 中的分組匹配

Mohd Mohtashim
更新於 2019年11月29日 12:07:15

2K+ 次瀏覽

從 Perl 中正則表示式的角度來看,以下兩個表示式之間沒有區別,只是前者更清晰一些。$string =~ /(\S+)\s+(\S+)/; 和 $string =~ /\S+\s+\S+/; 但是,分組的好處是它允許我們從正則表示式中提取序列。分組按其在原始表示式中出現的順序返回為列表。例如,在下面的片段中,我們從字串中提取了小時、分鐘和秒。my ($hours, $minutes, $seconds) = ($time =~ m/(\d+):(\d+):(\d+)/); 除了這種直接方法外,匹配的分組也可在…… 閱讀更多

Perl 中的匹配邊界和選擇備選方案

Mohd Mohtashim
更新於 2019年11月29日 12:04:17

236 次瀏覽

Perl 中的匹配邊界 \b 在 Perl 中的任何單詞邊界處匹配,其定義為 \w 類和 \W 類之間的差異。因為 \w 包括單詞的字元,而 \W 則相反,所以這通常意味著單詞的終止。\B 斷言匹配任何不是單詞邊界的位置。例如:/\bcat\b/ # 匹配 'the cat sat' 但不匹配 'cat on the mat' /\Bcat\B/ # 匹配 'verification' 但不匹配 'the cat on the mat' /\bcat\B/ # 匹配 'catatonic' 但不匹配 'polecat' /\Bcat\b/ # 匹配 'polecat' 但不匹配 'catatonic' Perl 中的選擇備選方案 | 字元就像…… 閱讀更多

Perl 中的轉換運算子

Mohd Mohtashim
更新於 2019年11月29日 12:03:02

609 次瀏覽

轉換類似於 Perl 中的替換原理,但並不完全相同,但與替換不同,轉換(或音譯)不使用正則表示式來搜尋替換值。轉換運算子為:tr/SEARCHLIST/REPLACEMENTLIST/cds y/SEARCHLIST/REPLACEMENTLIST/cds 轉換將 SEARCHLIST 中的所有出現的字元替換為 REPLACEMENTLIST 中對應的字元。例如,使用我們在本章中一直在使用的字串“The cat sat on the mat.”:示例 線上演示 #/user/bin/perl $string = 'The cat sat on the mat'; $string =~ tr/a/o/; print "$string"; 當執行上述程式時,它會產生以下結果:The cot sot on the mot. 標準 Perl…… 閱讀更多

Perl 中的替換運算子

Mohd Mohtashim
更新於 2019年11月29日 12:00:43

3K+ 次瀏覽

Perl 中的替換運算子 s/// 實際上只是匹配運算子的擴充套件,它允許您將匹配的文字替換為一些新文字。運算子的基本形式為:s/PATTERN/REPLACEMENT/; PATTERN 是我們要查詢的文字的正則表示式。REPLACEMENT 是我們要用來替換找到的文字的文字或正則表示式的規範。例如,我們可以使用以下正則表示式將所有出現的 dog 替換為 cat:示例 線上演示 #/user/bin/perl $string = "The cat sat on the mat"; $string =~ s/cat/dog/; print "$string"; 當執行上述程式…… 閱讀更多

Perl 中的只匹配一次

Mohd Mohtashim
更新於 2019年11月29日 11:58:55

221 次瀏覽

Perl 中有一個更簡單的匹配運算子 - ?PATTERN? 運算子。這基本上與 m// 運算子相同,只是它只在每次重置之間的每次呼叫中只匹配一次字串。例如,您可以使用它來獲取列表中的第一個和最後一個元素:示例 線上演示 #!/usr/bin/perl @list = qw/food foosball subeo footnote terfoot canic footbrdige/; foreach (@list) { $first = $1 if /(foo.*?)/; $last = $1 if /(foo.*)/; } print "第一個:$first,最後一個:$last"; 當執行上述程式時,它會產生以下結果:第一個:foo,最後一個:footbrdige

廣告
© . All rights reserved.