부스트 정규 표현식을 사용하여 텍스트 파일에서 서브 래칭을 추출하려고합니다. 현재 유효한 전자 메일 주소 대신 첫 번째 유효한 줄과 전체 줄만 반환합니다. 나는 이터레이터를 사용하고 서브 미팅을 시도했지만 성공하지 못했다. 다음은 현재 코드입니다.부스트 정규식을 C++로 사용하여 서브 어셈블리 추출
if(Myfile.is_open()) {
boost::regex pattern("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$");
while(getline(Myfile, line)) {
string::const_iterator start = line.begin();
string::const_iterator end = line.end();
boost::sregex_token_iterator i(start, end, pattern);
boost::sregex_token_iterator j;
while (i != j) {
cout << *i++ << endl;
}
Myfile.close();
}
아마 내 Regex가 잘못되었지만 적절한 결과를 얻을 수 없습니다. – John
감사합니다, 감사합니다. – John