Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::match_results(3)	      C++ Standard Libary	 std::match_results(3)

NAME
       std::match_results - std::match_results

Synopsis
	  Defined in header <regex>
	  template<

	  class	  BidirIt,					   (1)	(since
       C++11)
	  class	Alloc =	std::allocator<std::sub_match<BidirIt>>

	  > class match_results;
	  namespace pmr	{

	  template <class BidirIt>
	  using	match_results  =  std::match_results<BidirIt,	   (2)	(since
       C++17)
	  std::pmr::polymorphic_allocator<
	  std::sub_match<BidirIt>>>;

	  }

	  The  class template std::match_results holds a collection of charac-
       ter sequences that
	  represent the	result of a regular expression match.

	  This is a specialized	allocator-aware	container. It can only be  de-
       fault created,
	  obtained  from std::regex_iterator, or modified by std::regex_search
       or
	  std::regex_match. Because std::match_results holds std::sub_matches,
       each of which
	  is a pair of iterators into the original character sequence that was
       matched,	it's
	  undefined behavior to	examine	 std::match_results  if	 the  original
       character sequence
	  was destroyed	or iterators to	it were	invalidated for	other reasons.

	  The  first  sub_match	 (index	 0) contained in a match_result	always
       represents the full
	  match	within a target	sequence  made	by  a  regex,  and  subsequent
       sub_matches represent
	  sub-expression  matches corresponding	in sequence to the left	paren-
       thesis delimiting
	  the sub-expression in	the regex.

	  std::match_results meets the requirements  of	 a  AllocatorAwareCon-
       tainer and of a
	  SequenceContainer,  except  that  only copy assignment, move assign-
       ment, and operations
	  defined for a	constant containers are	supported, and that the	seman-
       tics of
	  comparison functions are different from those	required  for  a  con-
       tainer.

Type requirements
	  -
	  BidirIt must meet the	requirements of	LegacyBidirectionalIterator.
	  -
	  Alloc	must meet the requirements of Allocator.

Specializations
	  Several specializations for common character sequence	types are pro-
       vided:

	  Defined in header <regex>
	  Type			    Definition
	  std::cmatch		    std::match_results<const char*>
	  std::wcmatch		    std::match_results<const wchar_t*>
	  std::smatch		     std::match_results<std::string::const_it-
       erator>
	  std::wsmatch		    std::match_results<std::wstring::const_it-
       erator>
	  std::pmr::cmatch (C++17)  std::pmr::match_results<const char*>
	  std::pmr::wcmatch (C++17) std::pmr::match_results<const wchar_t*>
	  std::pmr::smatch	      (C++17)		   std::pmr::match_re-
       sults<std::string::const_iterator>
	  std::pmr::wsmatch		(C++17)		   std::pmr::match_re-
       sults<std::wstring::const_iterator>

Member types
	  Member type	  Definition
	  allocator_type  Allocator
	  value_type	  std::sub_match<BidirIt>
	  const_reference const	value_type&
	  reference	  value_type&
	  const_iterator  implementation defined (depends  on  the  underlying
       container)
	  iterator	  const_iterator
	  difference_type std::iterator_traits<BidirIt>::difference_type
	  size_type	  std::allocator_traits<Alloc>::size_type
	  char_type	  std::iterator_traits<BidirIt>::value_type
	  string_type	  std::basic_string<char_type>

Member functions
	  constructor	constructs the object
			(public	member function)
	  destructor	destructs the object
			(public	member function)
	  operator=	assigns	the contents
			(public	member function)
	  get_allocator	returns	the associated allocator
			(public	member function)

State
	  ready		checks if the results are available
			(public	member function)

Size
	  empty		checks whether the match was successful
			(public	member function)
	  size		 returns  the number of	matches	in a fully-established
       result state
			(public	member function)
	  max_size	returns	the maximum possible number of sub-matches
			(public	member function)

Element	access
	  length	returns	the length of the particular sub-match
			(public	member function)
			returns	the position of	the  first  character  of  the
       particular
	  position	sub-match
			(public	member function)
	  str		 returns the sequence of characters for	the particular
       sub-match
			(public	member function)
	  operator[]	returns	specified sub-match
			(public	member function)
			returns	sub-sequence between the beginning of the tar-
       get sequence and
	  prefix	the beginning of the full match.
			(public	member function)
			returns	sub-sequence between the end of	the full match
       and the end of
	  suffix	the target sequence
			(public	member function)

Iterators
	  begin		returns	iterator to the	beginning of the list of  sub-
       matches
	  cbegin	(public	member function)
	  end		returns	iterator to the	end of the list	of sub-matches
	  cend		(public	member function)

Format
	  format	formats	match results for output
			(public	member function)

Modifiers
	  swap		swaps the contents
			(public	member function)

Non-member functions
	  operator==			 lexicographically compares the	values
       in the two match
	  operator!=			result
	  (removed in C++20)		(function template)
	  std::swap(std::match_results)	specializes the	std::swap algorithm
	  (C++11)			(function template)

http://cppreference.com		  2022.07.31		 std::match_results(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::match_results&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help