<regex> library in C++ STL

Main classes

These classes encapsulate a regular expression and the results of matching a regular expression within a target sequence of characters.

  • basic_regex: Regular expression object (class template)
  • sub_match: Identifies the sequence of characters matched by a sub-expression (class template)
  • match_results: Identifies one regular expression match, including all sub-expression matches (class template)


These functions are used to apply the regular expression encapsulated in a regex to a target sequence of characters.

  • regex_match: Attempts to match a regular expression to an entire character sequence (function template)
  • regex_search: Attempts to match a regular expression to any part of a character sequence. (function template)
  • regex_replace: Replaces occurrences of a regular expression with formatted replacement text. (function template)


The regex iterators are used to traverse the entire set of regular expression matches found within a sequence.

  • regex_iterator: Iterates through all regex matches within a character sequence. (class template)
  • regex_token_iterator: Iterates through the specified sub-expressions within all regex matches in a given string or through unmatched substrings (class template)


This class defines the type of objects thrown as exceptions to report errors from the regular expressions library.

  • regex_error: Reports errors generated by the regular expressions library. (class)


The regex traits class is used to encapsulate the localizable aspects of a regex.

  • regex_traits: Provides metainformation about a character type, required by the regex library. (class template)

More Useful Links

Rated as one of the most sought after skills in the industry, own the basics of coding with our C++ STL Course and master the very concepts by intense problem-solving.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :
Practice Tags :


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.