Hét vraag- en antwoordplatform van Nederland

Hoe tel ik in Perl het aantal woorden uit een externe tekstfile?

Hoe tel ik in Perl het aantal woorden uit een externe tekstfile?
Heeft iemand daar een voorbeeldscript van?

Daarnaast moet ik bepaalde woorden uit de betreffende tekst uit het tekstfile vervangen en de totale output weer wegschrijven naar een file.


Wie o wie kan mij helpen?

Verwijderde gebruiker
13 jaar geleden
682

Heb je meer informatie nodig om de vraag te beantwoorden? Reageer dan hier.

Het beste antwoord

Eerst open je de file in een input buffer. Dan split je op het spatiekarakter. De tekst vervangen kun je met een gewone regex doen. Dus dan wordt het iets als (even uit mijn hoofd, er zouden typos of syntax errors in kunnen zitten):

#!/usr/bin/perl

$tevervangen = "bla bla bla";
$vervanging = "een of andere string";

open (FILE,"/path/to/file");
@inputlines = ;
close FILE;
$input = join('',@inputlines);
$input =~ s/$tevervangen/$vervanging/g;

open (FILE,">/path/to/outputfile");
print FILE $input;
close FILE;

@words = split(" ",$input);
$aantal = count(@words);

print "Mijn tekst heeft " . $aantal . " woorden.\n";
(Lees meer...)
Verwijderde gebruiker
13 jaar geleden

Weet jij het beter..?

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

0 / 5000
Gekozen afbeelding