第五章 模式匹配

2021-06-29 07:07:36 字數 1009 閱讀 6500

第五章   模式匹配

\b 匹配乙個字元邊界

\t 匹配乙個普通水平製表字元

/bar/ 匹配的是barrr

5.2 模式匹配操作符:

m// 用於匹配乙個模式,s///用於將某個符合模式的子字元竄代換為某個子串

每次成功匹配了乙個模式(包括替換中的模式),操作符都會把變數$`,$&,$' 分別設定為

匹配內容左邊內容,匹配的內容和匹配內容右邊的文字。

[oracle@june2 perl]$ cat 1.pl

"hot cross buns" =~ /cross/;

print "left <$`>\n";

print "match <$&>\n";

print "right <$'>\n";

[oracle@june2 perl]$ perl 1.pl

left match right < buns>

為了有更好的顆粒度和提高效率,你可以用圓括弧捕捉你特別想分離出來的部分。

每對圓括弧捕捉與圓括弧內的模式相匹配的子模式。圓括弧由左圓括弧的位置

從左到右依次排序,對應那些子模式的子字串在匹配之後可以通過順序的變數$1,$2,$3

等等獲得:

[oracle@june2 perl]$ cat 2.pl

$_ = "bilbo baggins's birthday is september 22";

/(.*)'s birthday is (.*)/;

print "person: $1\n";

print "date: $2\n";

[oracle@june2 perl]$ perl 2.pl

person: bilbo baggins

date: september 22

5.2.1 模式修飾詞:

/i 忽略大小寫

[oracle@june2 perl]$ cat 3.pl

$_='abc';

python第五章 Python學習(第五章)

記錄所有的名片字典 card list defshow menu 顯示資訊 print 50 print 歡迎使用 名片管理系統 v1.0 print print 1.新增名片 print 2.顯示全部 print 3.搜尋名片 print print 0.退出系統 print 50 defnew ...

第五章 雜湊

雜湊表adt,只支援二叉樹查詢所允許的一部分操作。比如插入,刪除,查詢等。那些需要元素間排序資訊的操作將不會得到支援。比如findmin,findmax和線性時間按排序順序列印整個表的操作時不支援的。雜湊函式在理想狀態是能將任何兩個不同的關鍵字對映到不同的單元,但是這是不可能,因為關鍵字是無窮的,但...

第五章 函式

第五章 函式 1 函式的定義 shell函式定義可以放在 bash profile 檔案中,也可以在使用該函式的指令碼中,還可以在命令列中 通過 source 或 執行bash profile檔案,使修改能夠立即生效 function 函式名 declare f 顯示定義的函式清單 export f...