C++ named requirements: RegexTraits (since C++11)
From cppreference.net
RegexTraits 는 주어진 문자 타입에 필요한 연산들을 추상화하는 특성 클래스로, std:: basic_regex 의 템플릿 타입 매개변수로 사용됩니다.
요구사항
주어진
- CharT , 문자 타입
- X , RegexTraits 타입에 대한 CharT 타입
- u , X 타입의 객체
- v , const X 타입의 객체
- p , const CharT * 타입의 값
- I1, I2 , 입력 반복자
- F1, F2 , 전방 반복자
- c , const CharT 타입의 값
- s , X :: string_type 타입의 객체
- cs , const X :: string_type 타입의 객체
- b , bool 타입의 값
- I , int 타입의 값
- cl , X :: char_class_type 타입의 객체
- loc , X :: locale_type 타입의 객체
| expression | return type | semantics |
|---|---|---|
| X :: char_type | CharT | 문자 타입을 참조하는 데 사용됩니다. |
| X :: string_type | std:: basic_string < CharT > | |
| X :: locale_type | traits 클래스가 사용하는 로케일을 나타내는 CopyConstructible 타입. | |
| X :: char_class_type | 특정 문자 분류를 나타내는 BitmaskType 타입입니다. | |
| X :: length ( p ) | std:: size_t | 반환값: p [ i ] == 0 을 만족하는 가장 작은 i . 시간 복잡도는 i 에 대해 선형입니다. |
| v. translate ( c ) | X :: char_type | 반환값: 임의의 문자 d 가 c 와 동등하다고 간주될 때, v. translate ( c ) == v. translate ( d ) 를 만족하는 문자. |
| v. translate_nocase ( c ) | X :: char_type | 반환값: 대소문자를 구분하지 않고 c 와 동등하다고 간주되는 모든 문자 C 에 대해 v. translate_nocase ( c ) == v. translate_nocase ( C ) 가 성립하는 문자. |
| v. transform ( F1, F2 ) | X :: string_type | 반환값: 반복자 범위 [ F1, F2 ) 로 지정된 문자 시퀀스에 대한 정렬 키로서, 문자 시퀀스 [ G1, G2 ) 가 문자 시퀀스 [ H1, H2 ) 보다 먼저 정렬된다면, v. transform ( G1, G2 ) < v. transform ( H1, H2 ) 가 성립합니다. |
| v. transform_primary ( F1, F2 ) | X :: string_type | 반환값: 반복자 범위 [ F1, F2 ) 로 지정된 문자 시퀀스에 대한 정렬 키로서, 대소문자를 구분하지 않고 문자 시퀀스 [ G1, G2 ) 가 문자 시퀀스 [ H1, H2 ) 보다 먼저 정렬된다면, v. transform_primary ( G1, G2 ) < v. transform_primary ( H1, H2 ) 가 성립합니다. |
| v. lookup_collatename ( F1, F2 ) | X :: string_type |
반환값:
|
| v. lookup_classname ( F1, F2, b ) | X :: char_class_type |
|
| v. isctype ( c, cl ) | bool | 반환값: c 가 cl 로 지정된 문자 클래스 중 하나에 속하는지 여부. |
| v. value ( c, I ) | int |
반환값:
|
| u. imbue ( loc ) | X :: locale_type |
|
| v. getloc ( ) | X :: locale_type | 반환값: v 가 이전에 사용했던 locale(이 있다면). |
표준 라이브러리
RegexTraits 는 다음 표준 라이브러리 클래스들에 의해 충족됩니다:
|
template
<>
class
regex_traits
<
char
>
;
template <> class regex_traits < wchar_t > ; |
(C++11 이후)
(C++11 이후) |
|