首頁 > 後端開發 > php教程 > 如何在 PHP 中有效地將 ereg 正規表示式轉換為 preg?

如何在 PHP 中有效地將 ereg 正規表示式轉換為 preg?

Susan Sarandon
發布: 2025-01-03 22:19:40
原創
364 人瀏覽過

How Can I Effectively Convert ereg Regular Expressions to preg in PHP?

在PHP 中將ereg 正規表示式轉換為preg

由於PHP 5.3.0 棄用了POSIX 正則表達式(ereg) ,因此將舊的ereg 表達式轉換為PCRE(Perl相容正規表示式)(preg)變得至關重要。本文提供了一個簡化的指南來促進這種過渡。

與 ereg 不同,preg 需要在正規表示式的兩端使用分隔符號。常用的分隔符號包括~、/和#。例如,ereg 表達式「^hello world」可以透過將其括在正斜線內來轉換為 preg_match(“/^hello world/”)。

匹配括號也可以用作分隔符,允許諸如 1、(^你好) 和 {^你好}。但是,表達式中包含的分隔符號必須使用反斜線進行轉義。例:ereg("^/hello", $str) 變成 preg_match('/^/hello/', $str)。

preg_quote 函數在轉義字串中的分隔符號和保留字元方面被證明很有用。例: $expr = preg_quote('/hello', '/'); preg_match('/^'.$expr.'/', $str).

PCRE 支援i(不區分大小寫)等修飾符,相當於eregi。例: eregi('^hello', 'HELLO') 可以替換為 preg_match('/^hello/i', 'HELLO')。

詳細的 PCRE 語法參考和 ereg-PCRE 轉換指導,請參閱 PHP 手冊。

在某些情況下,可能不需要正規表示式。對於提供的範例 (eregi('^hello world')),使用 stripos($str, 'hello world') === 0 進行簡化比較就足夠了。


  1. 你好

以上是如何在 PHP 中有效地將 ereg 正規表示式轉換為 preg?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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