PHP如何用正則匹配資料?

來源:酷知科普網 2.84W

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

操作方法

(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張
熱門標籤