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

Foo Lim foo at joshuatree.cs.ucdavis.edu
Tue Nov 23 23:41:14 PST 2004


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 ?  
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



More information about the vox-tech mailing list