-
正則匹配常用在表單驗證上,一些字段會有一定的格式要求,比如用戶名一般都要求必須是字母、數字或下劃線組成,郵箱、電話等也都有自己的規則,因此使用正則表達式可以很好的對這些字段進行驗證。
我們通過案例來看一下一般的用戶注冊頁,都怎樣對字段進行驗證
查看全部 -
正則表達式的搜索與替換在某些方面具有重要用途,比如調整目標字符串的格式,改變目標字符串中匹配字符串的順序等。
其中${1}與$1的寫法是等效的,表示第一個匹配的字串,$2代表第二個匹配的。
查看全部 -
preg_match只能匹配一次結果,但很多時候我們需要匹配所有的結果,preg_match_all可以循環獲取一個列表的匹配結果數組。
$matches結果排序為$matches[0]保存完整模式的所有匹配, $matches[1] 保存第一個子組的所有匹配,以此類推。
查看全部 -
preg_match用來執行一個匹配,可以簡單的用來判斷模式是否匹配成功,或者取得一個匹配結果,他的返回值是匹配成功的次數0或者1,在匹配到1次以后就會停止搜索。
查看全部 -
使用正則表達式的目的是為了實現比字符串處理函數更加靈活的處理方式,因此跟字符串處理函數一樣,其主要用來判斷子字符串是否存在、字符串替換、分割字符串、獲取模式子串等。
PHP使用PCRE庫函數來進行正則處理,通過設定好模式,然后調用相關的處理函數來取得匹配結果。
查看全部 -
正則表達式中每個元字符匹配一個字符,當使用+之后將會變的貪婪,它將匹配盡可能多的字符,但使用問號?字符時,它將盡可能少的匹配字符,既是懶惰模式。
當我們確切的知道所匹配的字符長度的時候,可以使用{}指定匹配字符數
查看全部 -
元字符具有兩種使用場景,一種是可以在任何地方都能使用,另一種是只能在方括號內使用,在方括號內使用的有:
\ 轉義字符
^ 僅在作為第一個字符(方括號內)時,表明字符類取反
- 標記字符范圍其中^在反括號外面,表示斷言目標的開始位置,但在方括號內部則代表字符類取反,方括號內的減號-可以標記字符范圍,例如0-9表示0到9之間的所有數字。
查看全部 -
正則表達式中具有特殊含義的字符稱之為元字符,常用的元字符有:
\ 一般用于轉義字符
^ 斷言目標的開始位置(或在多行模式下是行首)
$ 斷言目標的結束位置(或在多行模式下是行尾)
. 匹配除換行符外的任何字符(默認)
[ 開始字符類定義
] 結束字符類定義
| 開始一個可選分支
( 子組的開始標記
) 子組的結束標記
? 作為量詞,表示 0 次或 1 次匹配。位于量詞后面用于改變量詞的貪婪特性。 (查閱量詞)
* 量詞,0 次或多次匹配
+ 量詞,1 次或多次匹配
{ 自定義量詞開始標記
} 自定義量詞結束標記查看全部 -
PCRE庫函數中,正則匹配模式使用分隔符與元字符組成,分隔符可以是非數字、非反斜線、非空格的任意字符。經常使用的分隔符是正斜線(/)、hash符號(#) 以及取反符號(~),
分隔符后面可以使用模式修飾符,模式修飾符包括:i, m, s, x等,例如使用i修飾符可以忽略大小寫匹配:
查看全部 -
正則表達式是對字符串進行操作的一種邏輯公式,就是用一些特定的字符組合成一個規則字符串,稱之為正則匹配模式。
PHP中使用PCRE庫函數進行正則匹配,比如上例中的preg_match用于執行一個正則匹配,常用來判斷一類字符模式是否存在。
查看全部 -
對象復制,在一些特殊情況下,可以通過關鍵字clone來復制一個對象,這時__clone方法會被調用,通過這個魔術方法來設置屬性的值。
查看全部 -
方法的重載通過__call來實現,當調用不存在的方法的時候,將會轉為參數調用__call方法,當調用不存在的靜態方法時會使用__callStatic重載。
查看全部 -
PHP中的重載指的是動態的創建屬性與方法,是通過魔術方法來實現的。屬性的重載通過__set,__get,__isset,__unset來分別實現對不存在屬性的賦值、讀取、判斷屬性是否設置、銷毀屬性。
查看全部 -
類屬性必須定義為公有、受保護、私有之一。為兼容PHP5以前的版本,如果采用 var 定義,則被視為公有。
類中的方法可以被定義為公有、私有或受保護。如果沒有設置這些關鍵字,則該方法默認為公有。
查看全部 -
被定義為公有的類成員可以在任何地方被訪問。被定義為受保護的類成員則可以被其自身以及其子類和父類訪問。被定義為私有的類成員則只能被其定義所在的類訪問。
查看全部
舉報