Program zamieniający słowa

0

Witajcie. Musze napisac program, który zamienia podane słowo na inne słowo w pliku i tekst po zamianie już zapisuje do nowego pliku. Wszystkie dane mają być podane z konsoli po przełącznikach (nazwy obu plików, słowo ktore ma zostac zamienione i slowo ktore bedzie juz po zamianie). No i wypunktowałem sobie co po kolei robić:

  1. w funkcji int main podać te przełączniki
  2. zadeklarować 2 zmienne plików
  3. otworzyć plik z tekstem
  4. wyszukać podane słowo (można prosić o jakąś podpowiedz jak to zrobic?)
  5. jak juz znajdziemy to slowo to je zamieniamy na to, ktore wczesniej podalismy
  6. otwieramy plik drugi i zapisujemy to wszystko
  7. zamykamy pliki

Co wy byście zmienili w tym planie?

2

Masz tutaj naiwnego* gotowca:

#include <iostream>
#include <iterator>
#include <algorithm>
#include <functional>
#include <string>
#include <regex>

int main() {
    using namespace std;
    string input;
    pair<string, string> replacement_word = {
        "arm", "ass"    
    };
    while(getline(cin, input)) {
        regex_replace(
            ostreambuf_iterator<char>(cout),
            begin(input), end(input),
            regex(replacement_word.first), replacement_word.second
        );
        cout << "\n";
    }
    return 0;
}
Bite my shiny metal... 
arm?

|

Bite my shiny metal... 
ass?

http://ideone.com/8DRluN

*- aktualny regex podmieni nawet fragment słowa, np armpit na asspit

0

Dzieki za tak szybka odpowiedz. Musze to dokładniej przeanalizowac. Patrzac pobieżnie na kod spartanPAGE to on tylko zamienia te słowa, a z plikiem nic nie robi (tzn nie otwiera ani nie zamyka), prawda? Jestem na wczesnym etapie nauki, więc wybaczcie moje błahe pytania.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0