Solved

Perl usage

Posted on 2011-03-10
2
330 Views
Last Modified: 2012-05-11
Hi,

I have the following code which outputs 2 words before & 2 after when there is a match.

perl -ne 'print "$1\n" if/(([^\s]+\s){0,3}store(\s[^\s]+){0,3})/'

The script works fine except when there are sentences containing more than 1 instance of the word being matched on the same line in which case it accounts only for the first occurrence and ignores others.

example:

i went to the store to get away from my wife

output

to the store to get


The issue:

i went to the store to get away from my wife and found a new wife at the store

the script produces the same output as previously and ignores the second occurrence of store.
I'm looking for the following output:

to the store to get
at the store

Thanks
0
Comment
Question by:faithless1
2 Comments
 
LVL 84

Accepted Solution

by:
ozo earned 500 total points
ID: 35106147
echo "i went to the store to get away from my wife and found a new wife at the store" | perl -ne 'print "$1\n" while/(([^\s]+\s){0,3}store(\s[^\s]+){0,3})/g'
0
 

Author Closing Comment

by:faithless1
ID: 35120770
Thank you
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

A year or so back I was asked to have a play with MongoDB; within half an hour I had downloaded (http://www.mongodb.org/downloads),  installed and started the daemon, and had a console window open. After an hour or two of playing at the command …
In the distant past (last year) I hacked together a little toy that would allow a couple of Manager types to query, preview, and extract data from a number of MongoDB instances, to their tool of choice: Excel (http://dilbert.com/strips/comic/2007-08…
Explain concepts important to validation of email addresses with regular expressions. Applies to most languages/tools that uses regular expressions. Consider email address RFCs: Look at HTML5 form input element (with type=email) regex pattern: T…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now