淺析Perl正則表達式在PHP的實現(xiàn)
Perl正則表達式在PHP的實現(xiàn)達成,我們要使用PCRE相關(guān)的正則表達式函數(shù),那么具體的都有什么函數(shù)呢?這里我們向你介紹4個,希望對你有所幫助。
Perl正則表達式在PHP的實現(xiàn)所使用的函數(shù)介紹:
1、preg_match :
函數(shù)格式:
- int preg_match(string pattern, string subject, array [matches]);
這個函數(shù)會在string中使用pattern表達式來匹配,如果給定了[regs],就會將string記錄到[regs][0]中,[regs][1]代表使用括號"()"記錄下來的***個字符串,[regs][2]代表記錄下來的第二個字符串,以此類推。preg如果在string中找到了匹配的pattern,就會返回"true",否則返回"false"。
2、preg_replace :
函數(shù)格式:
- mixed preg_replace(mixed pattern, mixed replacement, mixed subject);
這個函數(shù)會使用將string中符合表達式pattern的字符串全部替換為表達式replacement。如果replacement中需要包含pattern的部分字符,則可以使用"()"來記錄,在replacement中只是需要用"\\1"來讀取。
3、preg_split :
函數(shù)格式:
- array preg_split(string pattern, string subject, int [limit]);
這個函數(shù)和函數(shù)split一樣,區(qū)別僅在與split可以使用簡單正則表達式來分割匹配的字符串,而preg_split使用完全的Perl兼容正則表達式。第三個參數(shù)limit代表允許返回多少個符合條件的值。
4、preg_grep :
函數(shù)格式:
- array preg_grep(string patern , array input);
這個函數(shù)和preg_match功能基本上,不過preg_grep可以將給定的數(shù)組input中的所有元素匹配,返回一個新的數(shù)組。
下面舉一個例子,比如我們要檢查Email地址的格式是否正確:
Perl正則表達式在PHP的實現(xiàn)實例:
- <?php
- function emailIsRight($email) {
- if (preg_match("^[_\.0-9a-z
- 0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$",$email)) {
- return 1;
- }
- return 0;
- }
- if(emailIsRight(\'y10k@963.net\')) echo \'正確<br>\';
- if(!emailIsRight(\'y10k@fffff\')) echo \'不正確<br>\';
- ?>
上面的程序會輸出"正確<br>不正確"。
Perl正則表達式在PHP的實現(xiàn)相關(guān)內(nèi)容就向你介紹到這里,希望對你了解和學習Perl正則表達式在PHP的實現(xiàn)有所幫助。
【編輯推薦】