JPCRE2  10.31.04
C++ wrapper for PCRE2 library
test32.cpp File Reference
#include <iostream>
#include "jpcre2.hpp"
+ Include dependency graph for test32.cpp:

Detailed Description

An example of performing regex match and regex replace with std::wstring and std::u32string.

#include <iostream>
#include "jpcre2.hpp"
#if __cplusplus >= 201103L
#endif
int main() {
//Working with wchar_t i.e std::wstring
//In Windows this will require 16-bit library to be linked, because wchar_t in windows is 16-bit
//Match:
std::cout<<"\n"<<
jpw::Regex(L"[\\w]+").match(L"I am a subject with 7 matches", "g"); //modifier is always std::string
//Replace
std::wcout<<"\n"<<
jpw::Regex(L"subject").replace(L"I am a subject",L"string");
#if __cplusplus >= 201103L
//Working with char32_t i.e std::u32string (>=C++11)
//Match:
std::cout<<"\n"<<
jpu::Regex(U"[\\w]+").match(U"I am a subject with 7 matches", "g"); //modifier is always std::string
//Replace
std::u32string us = jpu::Regex(U"subject").replace(U"I am a subject",U"string");
std::wcout<<L"\n"<<std::wstring(us.begin(), us.end()); //naive conversion, may fail on windows for string with surrogates.
#endif
return 0;
}
Author
Md Jahidul Hamid
jpcre2::select::Regex::replace
String replace(String const &mains, String const &repl, Modifier const &mod="", SIZE_T *counter=0)
Perform regex replace and return the replaced string using a temporary replace object.
Definition: jpcre2.hpp:4285
jpcre2::select::Regex::match
SIZE_T match(String const &s, Modifier const &mod, PCRE2_SIZE start_offset=0)
Perform regex match and return match count using a temporary match object.
Definition: jpcre2.hpp:4227
jpcre2.hpp
Main header file for JPCRE2 library to be included by programs that uses its functionalities....
jpcre2::select::Regex
Provides public constructors to create Regex object.
Definition: jpcre2.hpp:3550
jpcre2::select
struct to select the types.
Definition: jpcre2.hpp:1238