mirror of
				https://github.com/boostorg/algorithm.git
				synced 2025-10-31 15:51:51 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| //  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;
 | |
| }
 |