首頁 >後端開發 >php教程 >為什麼在 PHP 中使用 preg_match 時會出現「Unknown Modifier 'g' in...」錯誤?

為什麼在 PHP 中使用 preg_match 時會出現「Unknown Modifier 'g' in...」錯誤?

DDD
DDD原創
2024-11-30 14:55:16472瀏覽

Why Am I Getting

在 PHP 中使用 preg_match 時遇到「未知修飾符 'g' in...」錯誤?

嘗試使用preg_match 時函數進行正規表示式匹配時,您可能會遇到錯誤,指示“未知修飾符'g'”,當“g”修飾符時,會出現此問題。指定全域匹配,附加到正規表示式中。

理解錯誤

PHP 不為 preg_match 函數提供 'g' 修飾符。 preg_match_all函數應該用於全域匹配

解決方案

要修正此問題並執行全域匹配,只需在程式碼中將preg_match 替換為preg_match_all ,修改後的正規表示式應如下所示:

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

請記住,「i」修飾符確保不區分大小寫的匹配,而「m」修飾符啟用多行字串匹配。

以上是為什麼在 PHP 中使用 preg_match 時會出現「Unknown Modifier 'g' in...」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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