정규 표현식을 사용하여 MySQL 테이블에서 결과를 선택하려고 하면 다음과 같은 오류가 발생할 수 있습니다. "#1139 - 정규 표현식에서 '반복 연산자 피연산자가 유효하지 않음' 오류가 발생했습니다." 이 오류는 '?'를 사용하여 발생합니다. MySQL 정규식의 수량자.
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!