regex_regex_traits

regex_regex_traits (정규식 특성)

std::regex_traits은 CharT 타입에서 동작하는 데 필요한 타입과 함수 집합을 std::basic_regex에 공급하는 타입 특성 템플릿이에요. C++11부터 사용할 수 있어요.

출처: cppreference

본문

<regex> 헤더에 정의되어 있고, 시그니처는 다음과 같아요.

template< class CharT >
class regex_traits;

(since C++11)

타입 특성 템플릿 regex_traits은 CharT 타입에서 동작하는 데 필요한 타입과 함수 집합을 std::basic_regex에 공급해요.

많은 정규식 연산이 로케일 민감(예: std::regex_constants::collate 플래그 설정 시)하기 때문에, regex_traits 클래스는 보통 std::locale 인스턴스를 비공개 멤버로 보유해요.

표준 특수화 (Standard specializations)

표준 라이브러리는 std::regex_traits의 두 특수화를 정의해요:

  • std::regex_traits<char>
  • std::regex_traits<wchar_t>

이 특수화들은 std::basic_regex<char> (std::regex)와 std::basic_regex<wchar_t> (std::wregex)를 사용할 수 있게 해요. 다른 문자 타입(예: char32_t)으로 std::basic_regex을 사용하려면 사용자 제공 특성 클래스를 사용해야 해요.

멤버 타입 (Member types)

타입 정의
char_type CharT
string_type std::basic_string<CharT>
locale_type 정규식의 지역화된 동작에 사용되는 로케일
char_class_type 문자 분류의 비트마스크 타입

멤버 함수 (Member functions)

  • length — 시퀀스의 길이 계산
  • translate — 순서 비교를 위해 동등한 문자로 변환
  • translate_nocase — 대소문자 구분 없는 비교를 위해 변환
  • transform — 순서 비교를 위해 정렬 키 생성
  • transform_primary — 순서 비교 없이 기본 키 생성
  • lookup_classname — 이름으로 문자 분류 얻기
  • lookup_collatename — 이름으로 collating 요소 얻기
  • isctype — 문자가 문자 분류에 속하는지 확인
  • value — 숫자 문자를 정수 값으로 변환
  • imbue — 로케일 변경
  • getloc — 현재 로케일 얻기

더 알아보기 (Learn more)

cppreference