淺談PHPRegex的一點理解_PHP教程

來源:互聯網
上載者:User
PHPRegex的使用在實際開發中帶給我們全新的感覺,那麼我們如何掌握這樣一個強有力的工具呢?下面我們來看看對於PHPRegex學習的前期知識理解,希望對你有所協助。

PHP被大量的應用於Web的後台CGI開發,通常是在使用者資料資料之後得出某種結果,但是如果使用者輸入的資料不正確,就會出現問題,比如說某人的生日是"2月30日"!那應該怎麼樣來檢驗暑假是否正確呢? PHPRegex的支援,讓我們可以十分方便的進行資料匹配。

PHPRegex相關的一些概念:

簡單的說,Regex是一種可以用於模式比對和替換的強大工具。在幾乎所有的基於UNIX/LINUX系統的軟體工具中找到Regex的痕迹,例如:Perl或PHP指令碼語言。此外,JavaScript這種用戶端的指令碼語言也提供了對Regex的支援,現在Regex已經成為了一個通用的概念和工具,被各類技術人員所廣泛使用。

在某個Linux網站上面有這樣的話:"如果你問一下Linux愛好者最喜歡什麼,他可能會回答Regex;如果你問他最害怕什麼,除了繁瑣的安裝配置外他肯定會說Regex。"

正如上面說的,Regex看起來非常複雜,讓人害怕,大多數的PHP初學者都會跳過這裡,繼續下面的學習,但是PHP中的Regex有著可以利用模式比對找到合格字串、判斷字串是否合乎條件或者用指定的字串來替代合格字串等強大的功能,不學實在太可惜了……

PHPRegex的基本文法:

一個Regex,分為三個部分:分隔字元,運算式和修飾符。

分隔字元可以是除了特殊字元以外的任何字元(比如"/ !"等等),常用的分隔字元是"/"。運算式由一些特殊字元(特殊字元詳見下面)和非特殊的字串組成,比如"[a-z0-9_-]+@[a-z0-9_-.]+"可以匹配一個簡單的電子郵件字串。修飾符是用來開啟或者關閉某種功能/模式。下面就是一個完整的Regex的例子:

 
  1. /hello.+?hello/is

上面的Regex"/"就是分隔字元,兩個"/"之間的就是運算式,第二個"/"後面的字串"is"就是修飾符。

在運算式中如果含有分隔字元,那麼就需要使用轉義符號"",比如"/hello.+?/hello/is"。轉義符號除了用於分隔字元外還可以執行特殊字元,全部由字母構成的特殊字元都需要""來轉義,比如"d"代表全體數字。

PHPRegex的一點理解就向你介紹到這裡,希望對你瞭解和掌握PHPRegex有所協助。


http://www.bkjia.com/PHPjc/446586.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/446586.htmlTechArticlePHPRegex的使用在實際開發中帶給我們全新的感覺,那麼我們如何掌握這樣一個強有力的工具呢?下面我們來看看對於PHPRegex學...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.