Namespaces
Variants

std:: basic_regex

From cppreference.net
Regular expressions library
Classes
basic_regex
(C++11)
(C++11)
Algorithms
Iterators
Exceptions
Traits
Constants
(C++11)
Regex Grammar
헤더 파일에 정의됨 <regex>
template <

class CharT,
class Traits = std:: regex_traits < CharT >

> class basic_regex ;
(C++11부터)

클래스 템플릿 basic_regex 는 정규 표현식을 보관하기 위한 일반적인 프레임워크를 제공합니다.

일반적인 문자 타입을 위한 여러 typedef가 제공됩니다:

헤더 파일에 정의됨 <regex>
타입 정의
std::regex std :: basic_regex < char >
std::wregex std :: basic_regex < wchar_t >

목차

멤버 타입

멤버 타입 정의
value_type CharT
traits_type Traits
string_type Traits::string_type
locale_type Traits::locale_type
flag_type std::regex_constants::syntax_option_type

멤버 함수

정규식 객체를 생성합니다
(public member function)
정규식 객체를 파괴합니다
(public member function)
내용을 할당합니다
(public member function)
내용을 할당합니다
(public member function)
관찰자
정규 표현식 내의 표시된 하위 표현식 개수를 반환합니다
(public member function)
구문 플래그를 반환합니다
(public member function)
로케일
로케일 정보 가져오기
(public member function)
로케일 정보 설정
(public member function)
수정자
내용을 교환합니다
(public member function)

상수

문법 옵션 효과
ECMAScript 수정된 ECMAScript 정규 표현식 문법 을 사용합니다.
basic 기본 POSIX 정규 표현식 문법을 사용합니다 ( 문법 문서 ).
extended 확장 POSIX 정규 표현식 문법을 사용합니다 ( 문법 문서 ).
awk POSIX에서 awk 유틸리티가 사용하는 정규 표현식 문법을 사용합니다 ( 문법 문서 ).
grep POSIX에서 grep 유틸리티가 사용하는 정규 표현식 문법을 사용합니다. 이는 기본적으로 basic 옵션과 동일하지만, 새 줄 ' \n ' 을 교체 구분자로 추가합니다.
egrep POSIX에서 grep 유틸리티가 -E 옵션과 함께 사용하는 정규 표현식 문법을 사용합니다. 이는 기본적으로 extended 옵션과 동일하지만, '|' 에 추가로 새 줄 ' \n ' 을 교체 구분자로 추가합니다.
문법 변형 효과
icase 문자 매칭 시 대소문자를 구분하지 않습니다.
nosubs 매칭 수행 시 모든 표시된 부분 표현식 ( expr ) 이 비표시 부분 표현식 (?: expr ) 으로 처리됩니다. 제공된 std::regex_match 구조체에 매치가 저장되지 않으며 mark_count() 이 0입니다.
optimize 정규 표현식 엔진에게 매칭 속도를 높이도록 지시하며, 이로 인해 생성 시간이 느려질 수 있습니다. 예를 들어 비결정적 FSA를 결정적 FSA로 변환할 수 있습니다.
collate "[a-b]" 형태의 문자 범위가 로캘을 인식합니다.
multiline (C++17) ECMAScript 엔진이 선택된 경우 ^ 이 줄의 시작 부분과 매치되고 $ 이 줄의 끝 부분과 매치되도록 지정합니다.

ECMAScript , basic , extended , awk , grep , egrep 중에서 최대 하나의 문법 옵션만 선택할 수 있습니다. 문법을 선택하지 않으면 ECMAScript 가 선택된 것으로 간주됩니다. 다른 옵션들은 변형으로 작동하며, 예를 들어 std :: regex ( "meow" , std :: regex :: icase ) std :: regex ( "meow" , std :: regex :: ECMAScript | std :: regex :: icase ) 와 동등합니다.

basic_regex 의 멤버 상수들은 std::regex_constants 네임스페이스에 정의된 syntax_option_type 상수들의 중복입니다.

비멤버 함수

std::swap 알고리즘을 특수화함
(함수 템플릿)

추론 가이드 (C++17부터)