淺談PHP正則表達式的一點理解
PHP正則表達式的使用在實際開發(fā)中帶給我們?nèi)碌母杏X,那么我們?nèi)绾握莆者@樣一個強有力的工具呢?下面我們來看看對于PHP正則表達式學(xué)習(xí)的前期知識理解,希望對你有所幫助。
PHP被大量的應(yīng)用于Web的后臺CGI開發(fā),通常是在用戶數(shù)據(jù)數(shù)據(jù)之后得出某種結(jié)果,但是如果用戶輸入的數(shù)據(jù)不正確,就會出現(xiàn)問題,比如說某人的生日是"2月30日"!那應(yīng)該怎么樣來檢驗暑假是否正確呢? PHP正則表達式的支持,讓我們可以十分方便的進行數(shù)據(jù)匹配。
PHP正則表達式相關(guān)的一些概念:
簡單的說,正則表達式是一種可以用于模式匹配和替換的強大工具。在幾乎所有的基于UNIX/LINUX系統(tǒng)的軟件工具中找到正則表達式的痕跡,例如:Perl或PHP腳本語言。此外,JavaScript這種客戶端的腳本語言也提供了對正則表達式的支持,現(xiàn)在正則表達式已經(jīng)成為了一個通用的概念和工具,被各類技術(shù)人員所廣泛使用。
在某個Linux網(wǎng)站上面有這樣的話:"如果你問一下Linux愛好者最喜歡什么,他可能會回答正則表達式;如果你問他最害怕什么,除了繁瑣的安裝配置外他肯定會說正則表達式。"
正如上面說的,正則表達式看起來非常復(fù)雜,讓人害怕,大多數(shù)的PHP初學(xué)者都會跳過這里,繼續(xù)下面的學(xué)習(xí),但是PHP中的正則表達式有著可以利用模式匹配找到符合條件的字符串、判斷字符串是否合乎條件或者用指定的字符串來替代符合條件的字符串等強大的功能,不學(xué)實在太可惜了……
PHP正則表達式的基本語法:
一個正則表達式,分為三個部分:分隔符,表達式和修飾符。
分隔符可以是除了特殊字符以外的任何字符(比如"/ !"等等),常用的分隔符是"/"。表達式由一些特殊字符(特殊字符詳見下面)和非特殊的字符串組成,比如"[a-z0-9_-]+@[a-z0-9_-.]+"可以匹配一個簡單的電子郵件字符串。修飾符是用來開啟或者關(guān)閉某種功能/模式。下面就是一個完整的正則表達式的例子:
- /hello.+?hello/is
上面的正則表達式"/"就是分隔符,兩個"/"之間的就是表達式,第二個"/"后面的字符串"is"就是修飾符。
在表達式中如果含有分隔符,那么就需要使用轉(zhuǎn)義符號"\",比如"/hello.+?\/hello/is"。轉(zhuǎn)義符號除了用于分隔符外還可以執(zhí)行特殊字符,全部由字母構(gòu)成的特殊字符都需要"\"來轉(zhuǎn)義,比如"\d"代表全體數(shù)字。
PHP正則表達式的一點理解就向你介紹到這里,希望對你了解和掌握PHP正則表達式有所幫助。
【編輯推薦】