오라클 제거 문자열

WBOY
풀어 주다: 2023-05-11 10:24:07
원래의
2553명이 탐색했습니다.

오라클 데이터베이스에서는 문자열의 특정 문자 제거, 문자열 앞뒤의 공백 제거 등 문자열의 특정 부분을 제거해야 하는 경우가 있습니다. 이 기사에서는 Oracle에서 문자열을 제거하는 방법을 소개합니다.

  1. 문자열에서 지정된 문자 제거

Oracle에서는 REPLACE 함수를 사용하여 문자열에서 지정된 문자를 제거할 수 있습니다. REPLACE 함수를 사용하면 문자열의 모든 특정 문자를 다른 문자열로 바꿀 수 있습니다.

구문은 다음과 같습니다.

REPLACE(string, old_string, new_string)
로그인 후 복사

그 중 string은 대체할 문자열, old_string은 대체할 문자, new_string은 대체할 문자입니다.

예를 들어 문자열 "abcde"에서 문자 "c"를 제거하려면 다음 명령문을 사용할 수 있습니다.

SELECT REPLACE('abcde', 'c', '') FROM dual;
로그인 후 복사

위 명령문의 출력 결과는 "abde"입니다.

  1. 문자열 앞뒤 공백 제거

Oracle에서는 TRIM 함수를 사용하여 문자열 앞뒤 공백을 제거할 수 있습니다. TRIM 함수는 지정된 문자열에서 공백을 제거하거나 문자열의 양쪽에서 공백을 제거하는 데 사용할 수 있습니다.

구문은 다음과 같습니다.

TRIM([LEADING | TRAILING | BOTH] [trim_string] FROM string)
로그인 후 복사

그 중 LEADING은 왼쪽 공백을 제거한다는 의미이고, TRAILING은 오른쪽 공백을 제거한다는 의미이며, BOTH는 양쪽 공백을 동시에 제거한다는 의미입니다. Trim_string은 제거할 문자열을 지정할 수 있습니다. 지정하지 않으면 기본적으로 공백이 제거됩니다.

예를 들어 문자열 "abcde" 앞뒤의 공백을 제거하려면 다음 명령문을 사용할 수 있습니다.

SELECT TRIM('   abcde  ') FROM dual;
로그인 후 복사

위 명령문의 출력 결과는 "abcde"입니다.

  1. 문자열에서 문자와 숫자 제거

Oracle에서는 REGEXP_REPLACE 함수를 사용하여 문자열에서 문자와 숫자를 제거할 수 있습니다. 이 함수를 사용하면 사용자는 정규식을 사용하여 문자열의 문자를 바꿀 수 있습니다.

구문은 다음과 같습니다.

REGEXP_REPLACE(string, pattern, '')
로그인 후 복사

그 중 string은 대체할 문자열,pattern은 일치시킬 정규식, 세 번째 매개변수는 대체 문자, 여기는 빈 문자열입니다.

예를 들어 문자열 "a1b2c3d4e5"에서 모든 문자와 숫자를 제거하려면 다음 명령문을 사용할 수 있습니다.

SELECT REGEXP_REPLACE('a1b2c3d4e5', '[[:alpha:][:digit:]]', '') FROM dual;
로그인 후 복사

위 명령문의 출력 결과는 ""입니다.

  1. 문자열에서 한자 제거

Oracle에서는 NLSSORT 함수와 REGEXP_REPLACE 함수를 사용하여 문자열에서 한자를 제거할 수 있습니다.

구문은 다음과 같습니다.

로그인 후 복사
로그인 후 복사

예를 들어 문자열 "abc Chinese def"에서 한자를 제거하려면 다음 명령문을 사용할 수 있습니다.

로그인 후 복사
로그인 후 복사

위 명령문의 출력 결과는 "abcdef"입니다.

  1. 문자열에서 HTML 태그 제거

Oracle에서는 DBMS_XMLGEN 함수와 REGEXP_REPLACE 함수를 사용하여 문자열에서 HTML 태그를 제거할 수 있습니다.

구문은 다음과 같습니다.

REGEXP_REPLACE(DBMS_XMLGEN.getXMLType(string).getStringVal(), '<[^>]+>', '')
로그인 후 복사

그 중 string은 대체할 문자열이고, DBMS_XMLGEN.getXMLType(string).getStringVal()은 문자열을 XMLType 유형으로 변환하며, <1+> 모든 HTML 태그와 일치하는 정규 표현식입니다.

예를 들어, 다음 HTML 문자열에서 모든 태그를 제거하려면

<body>
  <div class="container">
    <h1>Hello world!</h1>
    <p>This is a paragraph.</p>
  </div>
</body>
로그인 후 복사

다음 명령문을 사용할 수 있습니다.

SELECT REGEXP_REPLACE(DBMS_XMLGEN.getXMLType('<body><div class="container"><h1>Hello world!</h1><p>This is a paragraph.</p></div></body>').getStringVal(), '<[^>]+>', '') FROM dual;
로그인 후 복사

위 명령문의 출력은 "Hello world! 이것은 단락입니다."입니다.

요약

이 글에서는 오라클에서 문자열을 제거하는 방법을 소개합니다. 지정된 문자 제거, 공백 제거, 문자 및 숫자 제거, 한자 제거 또는 HTML 태그 제거 등 Oracle은 해당 기능과 정규식을 제공합니다. 나는 독자들이 실제 적용에 있어 구체적인 상황에 따라 선택하고 적용할 수 있다고 믿는다.


  1. >

위 내용은 오라클 제거 문자열의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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