mirror of
https://github.com/boostorg/algorithm.git
synced 2025-07-30 04:27:16 +02:00
String Algorithm Library: initial commit
[SVN r22431]
This commit is contained in:
42
string/example/regex_example.cpp
Normal file
42
string/example/regex_example.cpp
Normal file
@ -0,0 +1,42 @@
|
||||
// Boost string_algo library example file ---------------------------------//
|
||||
|
||||
// Copyright Pavol Droba 2002-2003. Use, modification and
|
||||
// distribution is subject to 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)
|
||||
|
||||
// See http://www.boost.org for updates, documentation, and revision history.
|
||||
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
#include <iterator>
|
||||
#include <boost/regex.hpp>
|
||||
#include <boost/algorithm/string/regex.hpp>
|
||||
|
||||
using namespace std;
|
||||
using namespace boost;
|
||||
|
||||
int main()
|
||||
{
|
||||
cout << "* Regex Example *" << endl << endl;
|
||||
|
||||
string str1("abc__(456)__123__(123)__cde");
|
||||
|
||||
// Replace all substrings matching (digit+)
|
||||
cout <<
|
||||
"replace all (digit+) in str1 with #digit+# :" <<
|
||||
replace_all_regex_copy( str1, regex("\\(([0-9]+)\\)"), string("#$1#") ) << endl;
|
||||
|
||||
// Erase all substrings matching (digit+)
|
||||
cout <<
|
||||
"remove all sequences of letters from str1 :" <<
|
||||
erase_all_regex_copy( str1, regex("[[:alpha:]]+") ) << endl;
|
||||
|
||||
// in-place regex transformation
|
||||
replace_all_regex( str1, regex("_(\\([^\\)]*\\))_"), string("-$1-") );
|
||||
cout << "transformad str1: " << str1 << endl;
|
||||
|
||||
cout << endl;
|
||||
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user