首頁 > 後端開發 > php教程 > 如何寫 PHP 正規表示式來忽略引號的字串中的轉義引號?

如何寫 PHP 正規表示式來忽略引號的字串中的轉義引號?

Barbara Streisand
發布: 2024-11-28 00:48:12
原創
166 人瀏覽過

How to Write a PHP Regular Expression to Ignore Escaped Quotes Within Quoted Strings?

PHP:正規表示式忽略引號內的轉義引號

在這種情況下,您的目標是修改現有的正規表示式,以提取由單引號(') 或雙引號(")忽略這些引號內的轉義引號。

解決方案:

要實現此目的,您可以使用以下正則表達式,經過優化為了提高效率:

雙引號字串:

"[^"\\]*(?:\\.[^"\\]*)*"/s
登入後複製

單引號碼字串:

/'[^'\\]*(?:\\.[^'\\]*)*'/s
登入後複製

說明:

這些常規表達式由以下內容組成Components:

  • 1*:符合任何不是雙引號(") 或反斜線的字元().
  • (?:\.2): 匹配轉義字元(後面跟著任何非-引用,非反斜線字元)。表達式可以有效捕獲帶引號的字串,同時忽略轉義引號。 PHP程式碼:
  • 此程式碼現在會正確擷取帶引號的字串,忽略其中轉義的引號。 \

"\

$re_dq = '/"[^"\\]*(?:\\.[^"\\]*)*"/s';
$re_sq = "/'[^'\\]*(?:\\.[^'\\]*)*'/s";

$code = preg_replace_callback($re_dq, array($this, '_getPHPString'), $code);
$code = preg_replace_callback($re_sq, array($this, '_getPHPString'), $code);
登入後複製

以上是如何寫 PHP 正規表示式來忽略引號的字串中的轉義引號?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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