亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Perl > 正文

Perl常規表達式(1)

2019-11-18 17:23:57
字體:
來源:轉載
供稿:網友

如果在Unix中曾經使用過sde,awk,grep這些指令的話,相信對于Perl語言中的常規表達式(RegularExPRession)應該不會感到陌生才對。在Perl語言中因為有這個功能,所以對于字符串的處理能力是非常強有力的。RegularExpression可視為用來處理字符串的一種模式(pattern),其使用的格式為

/pattern/。在Perl語言的程序中,經常可以看到類似語法的應用,在CGI程序設計中也不例外。只要能夠善用常規表達式的話,要處理任何難的字符串皆可迎刃而解,在本章中筆者會用深入淺出的方式來介紹RegularExpression的用法。

  常規表達式(RegularExpression)也譯作正則表達式或文字處理模式,是指定模式的一種方法,這種模式對文本進行篩選,只匹配特定的字符串。一旦匹配到了一個字符串,就可以從大量的文本中將其抽取出來,或者利用另一個字符串來替代這個字符串。

  常規表達式也是初學Perl者的難點所在,但一旦掌握其語法,它們就擁有幾乎無限的模式匹配能力,而且Perl編程的大部分工作都是掌握常規表達式。

  一常規表達式中,/pattern/常用到的語法

--------------------------------------------------------------------------------/pattern/    結果

       除了換行字符/n外,找尋只有一個字符的字符串

x?      找尋0個或是1個x字符

x*      找尋0個或是0個以上的x字符

.*      找尋0個或是0個以上的任何字符

x       找尋0個或是1個以上的x字符

.       找尋1個或是1個以上的任何字符

{m}     找尋剛好是m個個數指定的字符

{m,n}    找尋在m個數個數以上,n個個數以下指定的字符

{m,}     找尋m個個數以上指定的字符

〔〕     找尋符合〔〕內的字符

〔^〕     找尋不符合〔〕內的字符

〔0-9〕    找尋符合0到9的任何一個字符

〔a-z〕    找尋符合a到z的任何一個字符

〔^0-9〕    找尋不符合0到9的任何一個字符

〔^a-z〕    找尋不符合a到z的任何一個字符

^    找尋字符開頭的字符

$    找尋字符結尾的字符

/d    找尋一個digit(數字)的字符,和〔0-9〕語法一樣

/d     找尋一個digit(數字)以上的字符串,和〔0-9〕 語法一樣

/D    找尋一個non-digit(非數字)的字符,和〔^0-9〕語法一樣

/D     找尋一個non-digit(非數字)以上的字符,和〔^0-9〕 語法一樣

/w    找尋一個英文字母或是數值的字符,和〔a-zA-Z0-9〕語法一樣

/w     找尋一個以上英文字母或是數值的字符,和〔a-zA-Z0-9〕 語法一樣

/W    找尋一個非英文字母,數值的字符,和〔^a-zA-Z0-9〕語法一樣

/W     找尋一個以上非英文字母,數值的字符,和〔^a-zA-Z0-9〕 語法一樣

/s    找尋一個空白的字符,和〔/n/t/r/f〕一樣

/s     找尋一個以上空白的字符,和〔/n/t/r/f〕 一樣

/S    找尋一個非空白的字符,和〔^/n/t/r/f〕一樣

/S     找尋一個以上非空白的字符,和〔^/n/t/r/f〕 一樣

/b    找尋一個不以英文字母,數值為邊界的字符串

/B    找尋一個以英文字母,數值為邊界的字符串

a|b|c    找到符合a字符或是b字符或是c字符的字符串

abc    找到一個含有abc的字符串

(pattern) ()這個符號是會記憶所找尋到的字符,是一個很實用的語法

      第一個()內所找到的字符串變成$1這個變量或是/1變量

      第二個()內所找到的字符串變成$2這個變量或是/2變量

  以此類推,筆者會在下一小節中詳細介紹它的用法/pattern/ii這個參數是代表忽略英文大小寫的意思,也就是在找尋字符串的時候,不會去考慮英文的大小寫/如果要在pattern模式中找尋一個有特殊的意義的字符,要在這個字符前加上/這個符號,這樣才會讓這個特殊字符失效

二常規表達式(RegularExpression)的簡單范例

  看了上一小節文字處理模(RegularExpression)之的,初學者對于這個語法的應用可能還不是很清楚,所以筆者會在這一小節中,舉出一些在常規表達式中常用的范例給大家看看:范例    說明/perl/    找到含有perl的字符串

/^perl/    找到開頭是perl的字符串

/perl$/    找到結尾是perl的字符串

/c|g|i/    找到含有c或g或i的字符串

/cg{2,4}i/    找到c后面跟著2個到4個g,再跟著i的字符串

/cg{2,}i/    找到c后面跟著2個以上g,再跟著i的字符串

/cg{2}i/    找到c后面跟著2個g,再跟著i的字符串

/cg*i/    找到c后面跟著0個或多個g,再跟著i的字符串,如同/cg{0,1}i/

/cg i/    找到c后面跟著一個以上g,再跟著c的字符串,如同/cg{1,}i/

/cg?i/    找到c后面跟著0個或是一個g,再跟著c的字符串,如同/cg{0,1}i/

/c.i/    找到c后面跟著一個任意字符,再跟著i的字符串

/c..i/    找到c后面跟著二個任意字符,再跟著i的字符串

/〔cgi〕/    找到符合有這三個字符任意一個的字符串

/〔^cgi〕/    找到沒有這三個字符中任意一個的字符串

//d/    找尋符合數值的字符串

       可以使用//d /來表示一個或是多個數值的字符串

//D/    找尋符合不是數值的字符串

       可以使用//D /來表示一個或是更多個非數值的字符串

//w/    找尋符合英文字母,數值的字符串

      可以使用//w /來表示一個或是更多個英文字母,數值的字符串

//W/    找尋符合非英文字母,數值字符的字符串

       可以使用//W /來表示一個或是更多個非英文字母,數值的字符串

//s/    找尋符合空白的字符串

       可以使用//s /來表示一個或是更多個空白字符的字符串

//S/    找尋符合不是空白的字符串

       可以使用//S /來表示一個或是更多不是空白的字符的字符串

//*/    找尋符合*這個符號的字符串,因為*在常規表達式中有它的特殊意思,所以要在這個特殊符號前加上/這個符號,這樣才會讓這個特殊字符失效

/abc/i    找尋符合abc的字符串而且不考慮這些符合字符串的大小寫

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲精品国产精品国自产在线| 国产精品流白浆视频| 亚洲国产精品大全| 成人a在线视频| 欧美日韩国产麻豆| 97精品国产91久久久久久| 日韩精品在线私人| 97婷婷大伊香蕉精品视频| 欧美精品激情在线| 日韩欧美国产网站| 午夜精品蜜臀一区二区三区免费| 国产精品欧美一区二区| 91禁国产网站| 日韩电影视频免费| 欧美极品少妇xxxxⅹ裸体艺术| 国产欧洲精品视频| 欧美—级a级欧美特级ar全黄| 91精品视频免费看| 九九热99久久久国产盗摄| 欧美精品在线观看91| 欧美激情a∨在线视频播放| 欧美日韩成人精品| 一区二区三区视频观看| 一本一道久久a久久精品逆3p| 欧美精品第一页在线播放| 日本免费在线精品| 欧洲日韩成人av| 国产不卡一区二区在线播放| 日本亚洲欧洲色α| 久久国产精品影片| 91精品国产91| 久久大大胆人体| 亚洲男人天堂古典| 成人天堂噜噜噜| 麻豆一区二区在线观看| 亚洲自拍av在线| 久久久久成人网| 亚洲欧美日韩国产精品| 欧美日韩色婷婷| 国产女精品视频网站免费| 国产精品视频yy9099| 亚洲一区二区久久久久久| 亚洲欧美成人一区二区在线电影| 国产91成人在在线播放| 色综合视频一区中文字幕| 91视频国产高清| 亚洲一区二区久久久| 国产专区精品视频| 欧美精品在线观看| 欧美另类交人妖| 在线视频欧美性高潮| 911国产网站尤物在线观看| 欧美精品一区二区三区国产精品| 成人有码视频在线播放| 992tv在线成人免费观看| 91国产美女在线观看| 韩国v欧美v日本v亚洲| 久久久久久欧美| 91亚洲永久免费精品| 成人激情视频在线播放| 午夜精品美女自拍福到在线| 欧美香蕉大胸在线视频观看| 久久黄色av网站| 日韩二区三区在线| 久久91超碰青草是什么| 亚洲自拍偷拍色片视频| 亚洲三级免费看| 精品久久久久久久久国产字幕| 欧美激情精品在线| 国产中文字幕91| 日韩欧美福利视频| 亚洲一区第一页| 欧美在线精品免播放器视频| 国产综合在线看| 在线播放精品一区二区三区| 国产精品观看在线亚洲人成网| 国内精品400部情侣激情| 亚洲最大福利视频网站| 亚洲一区二区国产| 日韩精品免费在线视频观看| 亚洲综合最新在线| 欧美黄色片在线观看| 国产一区深夜福利| 国产日韩在线一区| 欧美精品成人91久久久久久久| 精品国产电影一区| 日韩精品在线电影| 亚洲色无码播放| 亚洲码在线观看| 日韩国产在线播放| 亚洲精品aⅴ中文字幕乱码| 亚洲精品天天看| 亚洲成人av资源网| 精品国产91久久久| 国产精品成人va在线观看| 久久99精品视频一区97| 国产精品久久不能| 2019中文字幕在线| 91成品人片a无限观看| 久久精品国产亚洲一区二区| 亚洲欧美日韩国产成人| 国外日韩电影在线观看| 中文字幕日韩综合av| 国产玖玖精品视频| 青青草一区二区| 国产亚洲欧洲黄色| 国产精品嫩草影院一区二区| xxx欧美精品| 精品福利在线视频| 久久视频免费在线播放| 欧美视频不卡中文| 91精品视频观看| 91精品视频免费观看| 亚洲精品98久久久久久中文字幕| 精品国产一区二区三区久久| 日韩欧美亚洲国产一区| 亚洲精选中文字幕| 欧美午夜丰满在线18影院| 国产日韩av在线播放| 久久艹在线视频| 精品伊人久久97| 亚洲精品国产精品国产自| 成人黄色免费看| 久久天天躁夜夜躁狠狠躁2022| 欧美亚洲午夜视频在线观看| 国产精品久久久久久影视| 亚洲美女激情视频| 91手机视频在线观看| 亚洲精品日韩久久久| www.欧美免费| 97在线观看免费高清| 欧美高清在线播放| 亚洲永久在线观看| 欧美成人免费va影院高清| 久久精品久久精品亚洲人| 精品国产欧美一区二区五十路| 97色在线视频观看| 国产精品亚洲片夜色在线| 国产精品av在线播放| 4444欧美成人kkkk| 久久天堂电影网| 成人在线观看视频网站| www高清在线视频日韩欧美| 日韩在线激情视频| 日韩国产精品亚洲а∨天堂免| 91国产一区在线| 国产成人鲁鲁免费视频a| 91社影院在线观看| 久久久久久91| 91国产美女在线观看| 欧美日韩国产中文精品字幕自在自线| 欧美日韩成人黄色| 国产精品一区二区久久精品| 一区二区三区国产在线观看| 国产精品白嫩初高中害羞小美女| 欧美在线日韩在线| 欧美日韩第一页| 国产亚洲精品久久| 欧美亚州一区二区三区| 亚洲欧美国产视频| 在线观看日韩视频| 日韩中文字幕国产精品| 日韩av不卡在线| 国产视频自拍一区|