On Sun, Nov 30, 2008 at 11:47:29AM +0200, Giorgos Keramidas wrote:
> On Sat, 29 Nov 2008 20:59:51 -0800, Gary Kline <[EMAIL PROTECTED]> wrote:
> >     wordnet/wn prints the string "noun" out whereas I'd rather it simply
> >     printed "n."  Is there a way of making this substitution using awk?
> >     (I've never used awk except as a cmdline filter.)
> >
> >     The following fails:
> >
> > wn foot -over |grep Overview |awk
> > {if(!strcmp($3,"noun"))$3="n."; '{printf("%s %s\n", $4, $3);}}'
> >
> >     If there are any shortcuts, please clue me in!
> 
> Don't do this with a long stream of if/else/.../else blocks.  AWK is a
> pattern based rule-language.  You can apply different blocks of code to
> lines that match patterns like this:
> 
>     $3 ~ /adjective/ { print $1,"adj." }
>     $3 ~ /noun/      { print $1,"n." }
>     $3 ~ /verb/      { print $1,"v." }

        Thank you!  Would I enclose the three lines with "BEGIN", and end with 
an
        "exit;" at the end?

> 

-- 
 Gary Kline  [EMAIL PROTECTED]  http://www.thought.org  Public Service Unix
        http://jottings.thought.org   http://transfinite.thought.org


_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to