任何人都可以告訴我這個正則表達式有什麼問題嗎?PHP正則表達式問題
preg_match("/\+?)\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))/s", $text, $match, null, $start);
應該發揮作用(我發現它的一個論壇),但它拋出一個錯誤: 警告:的preg_match()[function.preg匹配]:編譯失敗:在括號不匹配偏移3
我在猜測關於鬼臼的東西是錯的?
由於提前, 菲捨爾
任何人都可以告訴我這個正則表達式有什麼問題嗎?PHP正則表達式問題
preg_match("/\+?)\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))/s", $text, $match, null, $start);
應該發揮作用(我發現它的一個論壇),但它拋出一個錯誤: 警告:的preg_match()[function.preg匹配]:編譯失敗:在括號不匹配偏移3
我在猜測關於鬼臼的東西是錯的?
由於提前, 菲捨爾
"/\+?)
- 這)
是無與倫比的。你或者需要在它前面的某個位置放置一個開口,或者擺脫它。不知道哪種方法最適合你想要做的事情。
我想要做的是從以下提取som數據:[quote = quote-userName(32)] quote text [/ quote] ...我想獲取當前數據:「quote-userName (32)「和」報價文字「摘錄! – fischer 2011-01-26 12:07:40
它告訴你的是,第一個),這發生在表達式中的第三個字符轉義+和問號,是無與倫比了。有一個缺失(在表達式的開頭或這個)應該被轉義爲\)。
缺少反斜槓
123
"/\+?)\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))/s"
^--- here
"/\+?\)\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))/s"
嘗試刪除第一右括號:
\+?\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))
或者逃避它,就像這樣:
\+?\)\)(=.+?,.+?)?\](.+?)\[\/quote\](?!((.*?)\[\/quote\]))
這個正則表達式肯定是壞的。如果您指定了預期的結果和字符串來匹配正則表達式,我們可以嘗試提供有意義的響應。 – 2011-01-26 11:41:05