正規表現を使用して MySQL テーブルから結果を選択しようとすると、次のようなエラーが発生する場合があります。 「#1139 - 正規表現からエラー「繰り返し演算子のオペランドが無効です」が発生しました。」このエラーは「?」の使用によって発生します。
MySQL の正規表現の実装は POSIX 1003.2 標準に従っており、「?」はサポートされていません。量子は、スター量子およびプラス量子 (例: ? や *?) の遅延 (非貪欲) 修飾子として使用されます。
このエラーを解決するには、「?」を置き換えてください。量指定子とそれに対応する貪欲な量指定子。たとえば、「?src="http://www」を使用する代わりに、「src="http://www」を使用して、「src="http://」より前の任意の数の文字と一致させます。 www".
さらに、不要なパターン (例: 何らかのスタイル/" src="a.png">) の一致を避けるために、 '1*src="http://www'' のような否定文字クラス。これは、大なり記号を含まない ') は 'src="http://www' 式の前にあります。
二重引用符 ('") は必要ないことに注意してください。エスケープされ、.* 量指定子は正規表現の先頭に暗黙的に指定されます。
以上がMySQL が「繰り返し演算子のオペランドが無効です」正規表現エラーをスローするのはなぜですか?それを修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。