[/ Copyright 2006-2007 John Maddock. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ] [section:examples Test and Example Programs] [h4 Test Programs] [*regress:] A regression test application that gives the matching/searching algorithms a full workout. The presence of this program is your guarantee that the library will behave as claimed - at least as far as those items tested are concerned - if anyone spots anything that isn't being tested I'd be glad to hear about it. Files: * [@../../test/regress/main.cpp main.cpp] * [@../../test/regress/basic_tests.cpp basic_tests.cpp] * [@../../test/regress/test_alt.cpp test_alt.cpp] * [@../../test/regress/test_anchors.cpp test_anchors.cpp] * [@../../test/regress/test_asserts.cpp test_asserts.cpp] * [@../../test/regress/test_backrefs.cpp test_backrefs.cpp] * [@../../test/regress/test_deprecated.cpp test_deprecated.cpp] * [@../../test/regress/test_emacs.cpp test_emacs.cpp] * [@../../test/regress/test_escapes.cpp test_escapes.cpp] * [@../../test/regress/test_grep.cpp test_grep.cpp] * [@../../test/regress/test_icu.cpp test_icu.cpp] * [@../../test/regress/test_locale.cpp test_locale.cpp] * [@../../test/regress/test_mfc.cpp test_mfc.cpp] * [@../../test/regress/test_non_greedy_repeats.cpp test_non_greedy_repeats.cpp] * [@../../test/regress/test_operators.cpp test_operators.cpp] * [@../../test/regress/test_overloads.cpp test_overloads.cpp] * [@../../test/regress/test_perl_ex.cpp test_perl_ex.cpp] * [@../../test/regress/test_replace.cpp test_replace.cpp] * [@../../test/regress/test_sets.cpp test_sets.cpp] * [@../../test/regress/test_simple_repeats.cpp test_simple_repeats.cpp] * [@../../test/regress/test_tricky_cases.cpp test_tricky_cases.cpp] * [@../../test/regress/test_unicode.cpp test_unicode.cpp] [*bad_expression_test:] Verifies that "bad" regular expressions don't cause the matcher to go into infinite loops, but to throw an exception instead. Files: [@../../test/pathology/bad_expression_test.cpp bad_expression_test.cpp]. [*recursion_test:] Verifies that the matcher can't overrun the stack (no matter what the expression). Files: [@../../test/pathology/recursion_test.cpp recursion_test.cpp]. [*concepts:] Verifies that the library meets all documented concepts (a compile only test). Files: [@../../test/concepts/concept_check.cpp concept_check.cpp]. [*captures_test:] Test code for captures. Files: [@../../test/captures/captures_test.cpp captures_test.cpp]. [h4 Example programs] [*grep] A simple grep implementation, run with the -h command line option to find out its usage. Files: [@../../example/grep/grep.cpp grep.cpp] [*timer.exe] A simple interactive expression matching application, the results of all matches are timed, allowing the programmer to optimize their regular expressions where performance is critical. Files: [@../../example/timer/regex_timer.cpp regex_timer.cpp]. [h4 Code snippets] The snippets examples contain the code examples used in the documentation: [@../../example/snippets/captures_example.cpp captures_example.cpp]: Demonstrates the use of captures. [@../../example/snippets/credit_card_example.cpp credit_card_example.cpp]: Credit card number formatting code. [@../../example/snippets/partial_regex_grep.cpp partial_regex_grep.cpp]: Search example using partial matches. [@../../example/snippets/partial_regex_match.cpp partial_regex_match.cpp]: regex_match example using partial matches. [@../../example/snippets/regex_iterator_example.cpp regex_iterator_example.cpp]: Iterating through a series of matches. [@../../example/snippets/regex_match_example.cpp regex_match_example.cpp]: ftp based regex_match example. [@../../example/snippets/regex_merge_example.cpp regex_merge_example.cpp]: regex_merge example: converts a C++ file to syntax highlighted HTML. [@../../example/snippets/regex_replace_example.cpp regex_replace_example.cpp]: regex_replace example: converts a C++ file to syntax highlighted HTML [@../../example/snippets/regex_search_example.cpp regex_search_example.cpp]: regex_search example: searches a cpp file for class definitions. [@../../example/snippets/regex_token_iterator_eg_1.cpp regex_token_iterator_eg_1.cpp]: split a string into a series of tokens. [@../../example/snippets/regex_token_iterator_eg_2.cpp regex_token_iterator_eg_2.cpp]: enumerate the linked URL's in a HTML file. The following are deprecated: [@../../example/snippets/regex_grep_example_1.cpp regex_grep_example_1.cpp]: regex_grep example 1: searches a cpp file for class definitions. [@../../example/snippets/regex_grep_example_2.cpp regex_grep_example_2.cpp]: regex_grep example 2: searches a cpp file for class definitions, using a global callback function. [@../../example/snippets/regex_grep_example_3.cpp regex_grep_example_3.cpp]: regex_grep example 2: searches a cpp file for class definitions, using a bound member function callback. [@../../example/snippets/regex_grep_example_4.cpp regex_grep_example_4.cpp]: regex_grep example 2: searches a cpp file for class definitions, using a C++ Builder closure as a callback. [@../../example/snippets/regex_split_example_1.cpp regex_split_example_1.cpp]: regex_split example: split a string into tokens. [@../../example/snippets/regex_split_example_2.cpp regex_split_example_2.cpp] : regex_split example: spit out linked URL's. [endsect]