首頁 > 後端開發 > php教程 > 為什麼我收到'preg_match 中未知的修飾符'g'”?

為什麼我收到'preg_match 中未知的修飾符'g'”?

DDD
發布: 2024-11-12 09:23:02
原創
496 人瀏覽過

Why Am I Getting

「preg_match 中的未知修飾符'g':解開謎團」

當嘗試利用PHP preg_match 函數強大的模式匹配功能時,您可能會遇到神秘的錯誤訊息:「未知修飾符'g'」。此錯誤是由於對支援的修飾符缺乏了解而引起的。

有問題的正規表示式旨在驗證電子郵件地址,包括令人費解的「g」修飾符,它表示全域匹配。然而,preg_match不支援“g”修飾符,導致上述錯誤。相反,請使用 preg_match_all 函數,該函數專為全域模式匹配而設計。

要修正此問題,只需在正規表示式中將「/gim」替換為「/im」即可。 “i”修飾符可確保不區分大小寫,而“m”修飾符可實現多行匹配。

例如:

preg_match_all("/^(\w|\.|-)+?@(\w|-)+?\.\w{2,4}($|\.\w{2,4})$/im", ....)
登入後複製

透過接受這種區別,您可以可以有效地利用PHP 的模式匹配功能來確保準確且有效率地驗證和擷取資料中的訊息。

以上是為什麼我收到'preg_match 中未知的修飾符'g'”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板