嘗試執行下列MySQL 查詢時:
SELECT text FROM `articles` WHERE content REGEXP '.*<img . order by date desc alt="為什麼我的 MySQL REGEXP 查詢失敗並顯示「重複運算子運算元無效」?" ><p>當您遇到下列MySQL 查詢時:</p> <h3></h3>當您遇到下列MySQL 查詢時:<p><em></em>您遇到錯誤:#1139 - 從正規表示式中收到錯誤「重複運算子運算元無效」。儘管正規表示式在 Notepad 中正常運行,但 MySQL 拒絕了它。 </p> <h3>理解問題:POSIX 與 PCRE</h3> <p>MySQL 正規表示式引擎遵循 POSIX 1003.2,缺乏問號的支援(?) 作為量詞中的非貪婪修飾符(</p> 和 )。因此,您不能僱用<pre class="brush:php;toolbar:false"><img alt="為什麼我的 MySQL REGEXP 查詢失敗並顯示「重複運算子運算元無效」?" >?和 ? 解:使用貪婪量詞
'<img alt="為什麼我的 MySQL REGEXP 查詢失敗並顯示「重複運算子運算元無效」?" >]*src="http://www'
要解決此問題,請使用量詞的貪婪版本,它仍然足以滿足您的預期目的。儘管如此,為了防止不必要的元素匹配,例如:
合併否定字符類,如下所示:請記住, " 字符不需要轉義,並且.*開頭是隱含的。以上是為什麼我的 MySQL REGEXP 查詢失敗並顯示「重複運算子運算元無效」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!