Hi Everyone,
I am stuck on a new problem now. The question is this:
Write a program that first search for lines in the file part2.txt (attached) containing a period, question mark, or comma at the end of the line. When these lines are found, print only the part of the line that occurs after the word "it" (case insensitive).
The Unix command line should look like:
$ prob7_2.pl test.txt
The output should look like:
was happily feeding modules through to the CPAN archive sites.
The text file it uses is this:
Tim created the Module List in August 1994 and maintained it manually till
April 1996. By that time Andreas had implemented the Perl Authors Upload
Server (PAUSE) and it was happily feeding modules through to the CPAN archive sites.
Since PAUSE held a database of module information which could be maintained by module authors
it made sense for the module listing part of the Module List to be built
from that database. In April 1996 Andreas took over the automatic posting of
the Module List and I now maintain the other parts of the text. We plan to add
value to the automation over time.
The code I have written so far is this:
#!/usr/bin/env perl use warnings; use strict; open my $test_fh, '<', @ARGV or die "Can not open file $!\n"; while (<$test_fh>) { if ($_ = m/\.|\,|\?/s) { if ($_ = m/it/s) { $part =~ m/it\S+(\.|\,|\?)/s; print "$part\n"; } } } close $test_fh;
I am so confused what I am doing at this point, and have no idea how to make it print only the words between the 'it' and the punctuation. Someone please help!
In reply to Regex capture between word and punctuation by negzero7
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |