国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Perl > 正文

強大的Perl正則表達式實例詳解

2020-06-04 20:33:37
字體:
來源:轉載
供稿:網友

一、介紹

正則表達式各語言都有自己的規范,但是基本都差不多,都是由元字符的組合來進行匹配;由于Nmap內嵌的服務與版本探測是使用的Perl正則規范,因此此篇博客記錄一下Perl正則的相關內容,方便后期查閱。

二、Perl正則例子

下面的例子可能有不足之處,有些來源于博客,沒有驗證;

1. 匹配IP地址:/d+/./d+/./d+/./d+

               /d:匹配一個數字字符,/d+:匹配一次或多次數字字符。

               /.:使用轉義字符匹配'.'。

2. 匹配郵箱類似于123456@qq.com: /^[a-zA-Z0-9_/-.]+@[a-zA-Z0-9_/-]+.[a-zA-Z]+$/

        ^: 匹配開頭

        $: 匹配結尾,這兩個保證了這是連續的一串字符。

3. 匹配數字:m/^[0-9]+$/

       由^開頭由$結尾保證了只含有數字,如果只有結尾$,那么abc12這種也是可以的。

       可用在輸入校驗,校驗輸入的是否是數字。

4. 用戶輸入溫度(華氏溫度,攝氏溫度),編程進行轉換

    m/^([-+]?[0-9]+)([CF])$/ :匹配正負整數溫度。

        [CF]: 匹配中括號其中的一個

        ?:匹配前面的子表達式0次或1次

        +:匹配前面的子表達式一次或多次

        perl通過臨時變量$1,$2保存子表達式匹配的文本。$1保存的是數字,$2保存的是符號。

    m/^([-+]?[0-9]+(?:/.[0-9]*)?)/s*([CF])$/i) :添加支持小數的溫度匹配

        臨時變量保存的順序與分組的開括號 ( 在表達式中的順序有關(從左到右);因此這個地方使用?:,代表該括號匹配的值不被臨時變量保存。

        /i: 代表忽略大小寫匹配,cf也匹配。

    參考地址:https://segmentfault.com/a/1190000004375773(精通正則表達式(第三版))  

5. 匹配空白行

  ^$  : 開頭之后馬上結束:空白行,不包括任何字符

  /n/s*/r

     /n匹配一個換行符,等價于/x0a
     /s匹配任何空白字符,包括空格制表換頁
     /r匹配一個回車符,等價于/x0d

6. 匹配首尾空白字符: ^/s*|/s*$

7. 匹配版本號1.3.0等

  [/d.]+

8. 匹配某個字符以外的所有字符:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 四子王旗| 东港市| 法库县| 长治市| 康马县| 襄樊市| 泸定县| 察雅县| 新巴尔虎左旗| 靖宇县| 墨玉县| 广宗县| 泽普县| 闸北区| 淳化县| 翼城县| 娱乐| 台湾省| 都昌县| 宁乡县| 紫金县| 怀集县| 石城县| 新乡市| 乌鲁木齐市| 建昌县| 普宁市| 屯门区| 蕲春县| 茂名市| 若羌县| 鄂托克前旗| 泸水县| 平昌县| 翁源县| 嘉荫县| 监利县| 谢通门县| 夏邑县| 眉山市| 康乐县|