我在修改一個 WordPress 插件,需要從 WordPress 生成的網頁源碼里截取一部分。但是源碼里偶爾有 反斜杠+數字 的情況,匹配的結果異常,結果里會吞掉 反斜杠和后面的兩位數字。<?php
header('Content-type: text/html; charset=UTF8');// 自己寫 demo 測試,不管單引號還是雙引號定義的字符串,都不會“吞掉”$str="
<div class=\"post_t\">
文本文本
\f\1
\9999
<div></div>
</div>";$regexp="/\"post_t\".*<div/s";
preg_match($regexp, $str ,$match);
echo $match[0];// 但是插件里的這個字符串變量不是我定義的,匹配結果也不一樣:// \f 反斜杠后面是字母的話沒有變化,輸出 \f// \1 反斜杠和數字一起消失,最多消失前兩個數字,所以輸出是空的// \9999 輸出 99我百思不得其解,就算是反斜杠部分被當成了其他進制,也不該吞掉啊。不知各位有沒有遇到過這個情況,有什么經驗嗎,謝謝!
php 正則匹配 反斜杠+數字 出現異常,求解
慕桂英4014372
2018-09-23 16:57:47