|
Boost Users : |
Subject: [Boost-users] Regular Expression
From: Wong Peter (peterapiit_at_[hidden])
Date: 2009-07-13 06:09:39
Hello to all, i want to search a container which copied from file with
certain regular expression and then display it to stdout;
Here is my code:
[code]
std::cout << "\n\nEnter Search designation : ";
std::string userDesignation;
getline(std::cin, userDesignation);
std::ifstream inHandle("C:\\Staff.txt");
std::vector<std::string> data;
data.reserve(100);
std::copy(std::istream_iterator<std::string>(inHandle),
std::istream_iterator<std::string>(),
std::back_inserter(data) );
boost::regex searchExpression(userDesignation);
boost::match_results<std::vector<std::string>::iterator > result;
boost::regex_match(data.begin(), data.end(), result, searchExpression);
[/code]
The error is
error C2664: 'char boost::w32_regex_traits<charT>::translate(charT,bool)
const' : cannot convert parameter 1 from
'std::basic_string<_Elem,_Traits,_Ax>' to 'char'
error C2664: 'char boost::w32_regex_traits<charT>::translate(charT,bool)
const' : cannot convert parameter 1 from
'std::basic_string<_Elem,_Traits,_Ax>' to 'char'
I think the error cause by vector string iterator rather than string
iterator.
Any workaround solution to this problem ?
Thanks.
-- Linux
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net