이 문서는 지원되지 않는 토토 꽁 머니 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : F.46. UNCENCER - Diacritics를 제거하는 텍스트 검색 스포츠 토토 결과버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

F.44. 억양이 없는

토토 꽁 머니 없음은 어휘소에서 악센트(발음 부호)를 제거하는 텍스트 검색 사전입니다. 이는 사전의 일반적인 동작과 달리 출력이 항상 다음 사전(있는 경우)으로 전달되는 것을 의미하는 필터링 사전입니다. 이를 통해 전체 텍스트 검색 시 악센트를 구분하지 않고 처리할 수 있습니다.

현재 구현토토 꽁 머니 없음다음에 대한 정규화 사전으로 사용할 수 없습니다.동의어 사전사전.

F.44.1. 구성

토토 꽁 머니 없음사전은 다음 옵션을 허용합니다:

  • 규칙은 번역 규칙 목록이 포함된 파일의 기본 이름입니다. 이 파일은 다음 위치에 저장되어야 합니다.$SHAREDIR/tsearch_data/(어디에서$SHAREDIR의미포스트그레SQL설치의 공유 데이터 디렉토리). 이름은 다음으로 끝나야 합니다..rules(다음에 포함되지 않음규칙매개변수).

규칙 파일의 형식은 다음과 같습니다:

  • 각 줄은 악센트가 있는 문자와 악센트가 없는 문자로 구성된 하나의 번역 규칙을 나타냅니다. 첫 번째는 두 번째로 번역됩니다. 예를 들어,

    À A
    Á A
    Â
    Ã A
    에 A
    Å A
    Æ AE

    두 문자는 공백으로 구분되어야 하며 한 줄의 선행 또는 후행 공백은 무시됩니다.

  • 또는 한 줄에 단 하나의 문자만 제공되면 해당 문자의 인스턴스가 삭제됩니다. 이는 토토 꽁 머니가 별도의 문자로 표시되는 언어에 유용합니다.

  • 사실, 각각"문자"공백을 포함하지 않는 모든 문자열이 될 수 있으므로토토 꽁 머니 없음사전은 발음 구별 부호 제거 외에 다른 종류의 하위 문자열 대체에 사용될 수 있습니다.

  • 다른 것과 마찬가지로토토 꽁 머니텍스트 검색 구성 파일의 경우 규칙 파일은 utf-8 인코딩으로 저장되어야 합니다. 데이터는 로드될 때 현재 데이터베이스의 인코딩으로 자동 변환됩니다. 번역할 수 없는 문자가 포함된 줄은 자동으로 무시되므로 규칙 파일에는 현재 인코딩에 적용할 수 없는 규칙이 포함될 수 있습니다.

대부분의 유럽 언어에 직접적으로 유용한 보다 완전한 예는 다음에서 찾을 수 있습니다.unaccent.rules, 다음 위치에 설치됨$SHAREDIR/tsearch_data/토토 꽁 머니 없음모듈이 설치되었습니다. 이 규칙 파일은 악센트가 있는 문자를 악센트가 없는 동일한 문자로 변환하고 합자를 동일한 일련의 단순 문자(예: Æ에서 AE)로 확장합니다.

F.44.2. 사용법

설치 중토토 꽁 머니 없음확장으로 텍스트 검색 템플릿이 생성됩니다.토토 꽁 머니 없음그리고 사전토토 꽁 머니 없음이것을 기반으로 합니다.토토 꽁 머니 없음사전에는 기본 매개변수 설정이 있습니다RULES='토토 꽁 머니가 없음', 표준과 함께 즉시 사용할 수 있게 해줍니다.unaccent.rules파일. 원하는 경우 매개변수를 변경할 수 있습니다. 예를 들어

mydb=# ALTER TEXT SEARCH DICTIONARY 토토 꽁 머니 없음 (RULES='my_rules');

또는 템플릿을 기반으로 새 사전을 생성하세요.

사전을 테스트하려면 다음을 시도해보세요:

mydb=# select ts_lexize('unaccent','호텔');
 ts_lexize
-----------
 호텔

다음은 삽입 방법을 보여주는 예입니다.토토 꽁 머니 없음텍스트 검색 구성에 사전:

mydb=# 텍스트 검색 구성 만들기 fr ( COPY = 프랑스어 );
mydb=# 텍스트 검색 구성 변경 fr
        hword, hword_part, word에 대한 매핑 변경
        토토 꽁 머니 없이, French_stem;
mydb=# select to_tsVector('fr','Hôtels de la Mer');
    to_ts벡터
------
 '호텔':1 '메르':4
(1줄)

mydb=# select to_tsVector('fr','Hôtel de la Mer') @@ to_tsquery('fr','Hotels');
 ?열?
----------
 티
(1줄)

mydb=# select ts_headline('fr','Hôtel de la Mer',to_tsquery('fr','Hotels'));
      ts_headline
-----------
 <b호텔</b 드 라 메르
(1행)

F.44.3. 기능

부정토토 꽁 머니()함수는 주어진 문자열에서 토토 꽁 머니(발음 부호)를 제거합니다. 기본적으로는 래퍼입니다.토토 꽁 머니 없음-유형 사전이지만 일반 텍스트 검색 컨텍스트 외부에서 사용할 수 있습니다.

토토 꽁 머니 없음([사전 regdictionary, ] 문자열 텍스트) 반환텍스트

만약에사전인수 생략, 이름이 텍스트 검색 사전토토 꽁 머니 없음그리고 동일한 스키마에 나타남토토 꽁 머니 없음()함수 자체가 사용됩니다.

예:

SELECT unaccent('unaccent', '호텔');
SELECT unaccent('호텔');