酷知百科網

位置:首頁 > 遊戲數碼 > IT技術

PHP如何用正則匹配數據?

IT技術2.87W

在做開發時,有時候需要在一段文字裏找出需要的字元,這時就需要用到正則表達式了。下面一起來看下具體怎麼使用正則查找數據。

操作方法

(01)我們先定義一個字元串,如圖,假設要從這段字元串裏,匹配找出網站的名字“搜狗”

PHP如何用正則匹配數據?

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

PHP如何用正則匹配數據? 第2張

(03)這裏定義一個數組,並調用php的preg_match方法,方法的第一個參數是上面定義的正則表達式,第二個參數是要查找的字元串,第三個參數是定義的數組,當有匹配到數據時,數組第一項是匹配的原字元串,數組第二項就是要查找的數據

PHP如何用正則匹配數據? 第3張

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

PHP如何用正則匹配數據? 第4張

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

PHP如何用正則匹配數據? 第5張

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

PHP如何用正則匹配數據? 第6張

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

PHP如何用正則匹配數據? 第7張
標籤:PHP 正則