l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
September 2: Social gathering
Next Installfest:
TBD
Latest News:
Aug. 18: Discounts to "Velocity" in NY; come to tonight's "Photography" talk
Page last updated:
2004 Nov 24 10:28

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] Using awk or perl to find and replace
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] Using awk or perl to find and replace



On Wednesday 24 November 2004 00:15, Foo Lim wrote:
> On Wed, 24 Nov 2004, Trevor M. Lango wrote:
> > On Tuesday 23 November 2004 23:41, Foo Lim wrote:
> > > On Tue, 23 Nov 2004, Trevor M. Lango wrote:
> > > > I have been reading the man pages and I'm lost.  I want to scan
> > > > through an input file for an expression with this pattern:
> > > >
> > > >     h.*.JPG
> > > >
> > > > and replace it with an expression with the following pattern:
> > > >
> > > >     *.h.JPG
> > > >
> > > > Perl and awk both appear to be ideal candidates for just such a task
> > > > but I'm a serious newbie to both of 'em.  Any help much appreciated!
> > >
> > > Hi Trevor,
> > >
> > > Does the pattern "h.*.JPG" match something like this: h.abc123.JPG ?
> >
> > Something like this: "h.#-##-####-####.###.JPG"
> >
> > > Since the period "." is a metacharacter in regular expressions.  If
> > > that's the case, then a perl script like this would work:
> > >
> > > while (<>) {
> > >   s/h\.(.*)\.JPG/$1.h.JPG/g;
> > >   print;
> > > }
> > >
> > > FL
>
> The code above should work.  If it's possible to have multiple files on a
> line, you may want to change the regex to this:
>
>   s/h\.(.*?)\.JPG/$1.h.JPG/g;
>
> instead, so it will minimal match instead of do a greedy match.

Okay I am not having any success.  Perhaps I need to be more specific - I am 
trying to scan through html files to replace the image references in lines 
like this one:

       <img align=right src="/IMAGES/C/h.I-LP-CEUR-AD.003.jpg"

In this particular example, I need to replace:

    h.I-LP-CEUR-AD.003.jpg

with:

    I-LP-CEUR-AD.003.h.jpg

Thank you for your responses!

> HTH,
> FL
>
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech
_______________________________________________
vox-tech mailing list
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech



LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
O'Reilly and Associates
For numerous book donations.