## 如何驗證 Email 地址是否有效
一般來說,你不能。有一些看起來合理的方法可以使用,但卻沒有辦法檢測地址 是否實際可以投遞,如果沒有實際嘗試投遞的話。
使用正則表達式:
~~~
# Match basically blah@blah.blah
if ( $addr =~ /^\S+\@\S+\.\S+$/ ) {
print "Looks OK";
}
~~~
如果你干真活的話,可能希望看看 CPAN 上可用的模塊,比如: _Email::Address_ 、 _Email::Valid_ 。
## 如何從數據庫獲得數據
_DBI_?及其?_DBD_?子模塊,如?_DBD::SQLite_ 。
## 如何從網頁獲得數據
_LWP_?意為? _libwww-perl_ ,它是與網頁交談的標準方式。
_WWW::Mechanize_?是使 HTML 處理更容易的?_LWP_?的超集。
## 如何做日期計算
使用?_Date::Manip_ 、 _Date::Calc_ 、或? _DateTime_ 。全部都有不同的樣式和 不同的能力。
## 如何處理程序的命令行參數
使用? _Getopt::Long_ 。
## 如何解析 HTML
無論你做什么,都不要使用正則表達式。使用?_HTML::Parse_?或別的類似東東。 如果你解析 HTML 是為了從網頁提取鏈接或圖像,不妨使用? _WWW::Mechanize_ 。
## 如何來點顏色
使用? _Term::ANSIColor_ 。
## 如何讀取鍵及不看到輸入的密碼
使用? _Term::ReadKey_ 。