PHP如何用正則匹配數據?

在做開發時 , 有時候需要在一段文字里找出需要的字符 , 這時就需要用到正則表達式了 。 下面一起來看下具體怎么使用正則查找數據 。 操作方法 01 我們先定義一個字符串 , 如圖 , 假設要從這段字符串里 , 匹配找出網站的名字“搜狗”

PHP如何用正則匹配數據?



02 然后定義一個正則表達式 , 解析下代碼 , 正則要放在斜杠符號(/)里面 , 如果表達式里有用到斜杠(/)符號的 , 則需要用反斜杠來轉義 。
最后面的 “i” 標記是讓正則表達式在匹配的時候不需要區分大小寫 。

PHP如何用正則匹配數據?



03 【PHP如何用正則匹配數據?】這里定義一個數組 , 并調用php的preg_match方法 , 方法的第一個參數是上面定義的正則表達式 , 第二個參數是要查找的字符串 , 第三個參數是定義的數組 , 當有匹配到數據時 , 數組第一項是匹配的原字符串 , 數組第二項就是要查找的數據

PHP如何用正則匹配數據?



04 最后用dump方法輸出數組的內容 , 顯示匹配結果 。
所有的代碼就是這幾行 。

PHP如何用正則匹配數據?



05 運行這些代碼后 , 我們看到結果如圖 , 有匹配到數據 , 但得到的結果(數組第二項內容)把字符串后面的內容都匹配上了 。

PHP如何用正則匹配數據?



06 為什么會這樣?
是因為我們的正式表達式 , 默認情況是貪婪匹配 , 就是匹配盡量多的內容 。
如何修正?我們只要加多一個U標記就行了 , 代碼如圖 , 加上這個標記就會告訴正則表達式 , 執行非貪婪匹配 。

PHP如何用正則匹配數據?



07 再運行下代碼 , 看下結果 。
如圖 , 這次能正確匹配到網站名字了 。

PHP如何用正則匹配數據?





以上內容就是PHP如何用正則匹配數據?的內容啦 , 希望對你有所幫助哦!

    猜你喜歡