當嘗試使用正規表示式從MySQL 表中擷取特定結果時,您可能會遇到錯誤訊息:
“#1139 - 收到錯誤“重複運算符操作數無效” regexp"
要解決此問題,請了解 MySQL 採用 Henry Spencer 的正規表示式實現,該實現遵循 POSIX 1003.2。此實作不支援使用問號 (?) 作為星號 (*) 和加號 ( ) 量詞的非貪婪(惰性)修飾符,這在 PCRE(Perl 相容正規表示式)中是可能的。
要修正錯誤,請選擇量詞的貪婪版本,這應該會產生所需的結果。但是,為了防止匹配不需要的模式(例如,some style/" src="a.png">),請考慮使用否定字元類別:
"1*src="http://www""
注意"字元不需要轉義,且表達式開頭的 .* 是隱含的。
以上是MySQL REGEXP 錯誤 \'#1139 - 出現錯誤 \'重複運算子運算元無效\':如何修正非貪婪量字問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!