> 데이터 베이스 > MySQL 튜토리얼 > MySQL에서 정규식 대체를 어떻게 수행할 수 있습니까?

MySQL에서 정규식 대체를 어떻게 수행할 수 있습니까?

DDD
풀어 주다: 2024-12-17 17:48:10
원래의
590명이 탐색했습니다.

How Can I Perform Regular Expression Replacements in MySQL?

MySQL에서 정규식 바꾸기 수행

정규식을 사용하여 MySQL 데이터베이스의 데이터를 수정하려고 하시나요? 이 질문은 MySQL에서 이러한 기능의 가용성을 탐색하고 MariaDB 또는 MySQL 8.0을 사용하는 사용자를 위한 솔루션을 제공합니다.

정규식 대체 함수

MariaDB 또는 MySQL 8.0에서, REGEXP_REPLACE() 함수는 데이터베이스 열 내에서 정규식 기반 대체를 수행하는 기능을 제공합니다. 구문은 다음과 같습니다.

REGEXP_REPLACE(col, regexp, replace)
로그인 후 복사

여기서:

  • col은 수정할 데이터가 포함된 열입니다.
  • regexp는 일치시킬 정규식 패턴입니다.
  • replace는 교체입니다. string

함수 사용

REGEXP_REPLACE() 함수를 활용하려면 다음과 같이 쿼리에 해당 함수를 포함시키기만 하면 됩니다.

SELECT REGEXP_REPLACE('stackowerflow', 'ower', 'over');
로그인 후 복사

이렇게 하면 출력:

stackoverflow
로그인 후 복사

정규 표현식에서 그룹화

이 함수는 정규 표현식 내에서 그룹화를 지원하므로 더 복잡한 교체가 가능합니다. 예를 들어, 다음 문은 그룹화를 사용하여 일치하는 두 단어의 위치를 ​​바꿉니다.

SELECT REGEXP_REPLACE("stackoverflow", "(stack)(over)(flow)", '\2 - \1 - \3')
로그인 후 복사

이 결과는 다음과 같습니다.

over - stack - flow
로그인 후 복사

대체 접근 방식

MariaDB 또는 MySQL 8.0을 실행하지 않는 사용자의 경우 PHP 및 MySQL과 관련된 대체 접근 방식을 사용할 수 있습니다. 이 방법에는 데이터 선택, 정규식 대체를 위해 PHP를 사용한 다음 데이터베이스 업데이트가 포함됩니다. 그러나 전용 REGEXP_REPLACE() 함수를 사용하는 것보다 더 번거롭고 성능 집약적일 수 있습니다.

위 내용은 MySQL에서 정규식 대체를 어떻게 수행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿