perl

正規表示式7

2013-08-26 13:59
要能夠精確的描述正規表示式,還有一項非常重要的工具,就是定位點。其中你可以指定某個樣式必須要被放在句首或是句尾,比如你希望比對某個字串一開始就是"Perl"這個字串。那麼你可以把你的樣式這樣表示: /^Perl/ 其中的^就是表示字串開始的位置,也就是只有在開始的位置比對到這個字串才算成功。 當然,你可以可以使用$來表示字串結束的位置。以這個例子來看:   my $content = "Taipei Perl Monger"; if ($content =~ /Monger$/s) {   # 以定位字元進行比對 print...

正規表示式6

2013-08-26 13:58
不過在使用這些暫存變數有一些必須注意的部份,那就是這些變數的生命週期。因為這些變數回被放在記憶體中,直到下次比對成功,要注意,是比對成功。所以如果你的程式是這麼寫的話:   my $content = "Taipei Perl Monger"; $content =~ /(Monger$)/; # $1 現在是 Monger print $1; $content = /(perl)/; # 比對失敗 print $1; # 所以還是印出...

正規表示式5

2013-08-26 12:24
my $content = "I like perl. \n I am a perl monger. \n"; if ($content =~ /(like.*monger)/s) { print "$1\n"; } 這裡的$1就是表示第一個括號括住的的比對結果。所以Perl會送出這樣的結果:   [hcchien@Apple]% perl ch3.pl like perl. I am a perl monger 當然,預設的比對變數也是可以一次擷取多個比對結果,就像下面的例子:   my $content = "I like perl....

正規表示式4

2013-08-26 12:23
可是我要怎麼確定不會寫成PERL呢?其實你可以考慮忽略大小寫的比對方式,所以你只要這樣表示: $content =~...

正規表示式3

2013-08-26 12:11
\s:很多時候,我們回看到要比對的字串中有一些空白,可是很難分辨他們到底是空格,跳格符號或甚至是換行符號 (註一),這時候我們可以用\s來對這些字元進行比對。而且\s對於空白符號的比對掌握非常的高,他可以處理(\n\t\f\r...

正規表示式2

2013-08-26 12:08
/f(oo|ee)t/   # 找 foot 或 feet /it (is|was) a good choice/  # 在句子中用不同的字 /on (March|April|May)/   # 顯然也可以多個選擇 8.2...

正規表式示

2013-08-26 11:52
$string =~ m/$patten/ $string =~ m{$patten} $string =~ m|$patten| $string =~ m!$patten! $string =~ /$patten/     my $answer = "monger"; until ((my $patten = ) =~ /$answer/) { # 持續進行,直到使用者輸入含有 monger 的字串 print "wrong\n";   # 在這裡,表示比對失敗 };     my $answer =...

exists/delete

2013-08-24 01:37
5.6 雜湊的操作  毫無疑問,雜湊這樣的資料結構對於程式的寫作有著莫大的幫助,但是我們必須能熟悉對雜湊的操作才能夠讓我們更容易發揮雜湊的功能。其中最重要的大概就是 exists跟delete兩個函數了,這兩個函式能讓我們有效的掌握雜湊的元素,同時它們也是perl內建相關於雜湊函數的最後兩個(註一)。 5.6.1...

each

2013-08-24 01:34
5.4 each 就像在陣列當中,你可以使用foreach這樣的迴圈來找到陣列中的每一個值,當然我們也經常需要在雜湊中進行類似的工作,我們希望可以在雜湊中能一次取 出所有的鍵,值。所以你必須仰賴類似foreach的工具來幫助你,那就是each函數。例如你可以利用下面的寫法讀出剛剛我們所建立起來的雜湊:   while (my ($key, $value) = each (%hash)) {   # 取出雜湊中的每一對鍵值,並且分別放入$key, $value print "$key =>...

hash

2013-08-24 01:26
my %hash = qw/1 one 2 two 3 three/; 這樣的賦值方式看起來跟處理陣列時候的方式非常接近,我們利用qw//來指定一個串列,並且將這個串列賦值給雜湊。這時候,Perl會按照串列的順序,分別為【鍵】,【值】,並且賦予雜湊。所以在這個例子中,所得到的結果就跟我們這麼寫是一樣的:   $hash{1} = 'one'; $hash{2} = 'two'; $hash{3} =...
<< 1 | 2 | 3 >>