首頁  >  文章  >  後端開發  >  與Perl相容的正規表示式函數(二)

與Perl相容的正規表示式函數(二)

巴扎黑
巴扎黑原創
2017-04-25 13:58:511646瀏覽

函數preg_grep()

此函數與preg_match()函數和preg_match_all()不同的是符合陣列中的元素,傳回與正規表示式相符的陣列單元,此函數的語法格式如下

array preg_grep(string pattren,array input)

此函數傳回一個數組,其中包含了第二個參數input數組中與給定的第一個參數pattern模式相符的單元。對於輸入數組input中的每個元素,只進行一次匹配。此函數的使用程式碼範例如下所示:

<?php
$preg = &#39;^d{3,4}-?\d{7,8}&#39;;
$arr = array(&#39;043212345678&#39;,&#39;0431-7654321&#39;,&#39;12345678&#39;);
$preg_arr = preg_grep($preg,$arr);
var_dump($preg_arr);
?>

在陣列$arr中符合具有正確格式的電話號碼(010-1234****等),並儲存到另一個陣列中。

字串處理函數strstr()、strpos()、strrpos()、substr()

如果只是尋找字串中是否包含某個子字串,建議使用strstr()或strpos()函數,如果只是簡單地從一個字串中取出一段子字串,建議使用substr()函數。雖然PHP提供的字串處理函數不能完成複雜的字串匹配,但處理一些簡單的字串匹配,執行效率則要比使用正規表示式稍高一些。

函數strstr()搜尋一個字串在另一個字串中的第一次的出現,該函數傳回字串的其餘部分(從匹配點)。如果未找到所搜尋的字串,則傳回FALSE。此函數對大小寫敏感,如需進行大小寫不敏感的搜索,可使用stristr()函數。此函數有兩個參數,第一個參數提供被搜尋的字串,第二個參數為所搜尋的字串,如果該參數是數字,則搜尋符合數字ASCII值的字元。函數的使用程式碼如下所示:

<?php
echo strstr("this is a test!","test");
echo strstr("this is a test!",115);
?>

函數strpos()傳回字串在另一個字串中第一次出現的位置,如果沒有找到字串,則傳回false。函數strrpos()和函數strpos()相似,用來找出字串在另一個字串中最後一次出現的位置。這兩個函數對大小寫敏感,如需進行對大小寫不敏感的搜索,可以使用stripos()和strripos()函數。函數substr()則可以傳回字串的一部分。

以上是與Perl相容的正規表示式函數(二)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn