Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Awk > Re: using a var...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 14 of 20 Topic 2187 of 2236
Post > Topic >>

Re: using a variable to help define a regular expression

by Ed Morton <morton@[EMAIL PROTECTED] > Mar 13, 2008 at 05:37 PM

On 3/12/2008 12:38 PM, tbh wrote:
> hi, i'm not a complete awk beginnger, but also no expert.
> 
> I'm trying to do something reasonably simple and am having trouble. i
can do 
> the same thing in perl, but my case (reading pretty massive input under 
> cygwin under windows) that degrades performance.
> 
> I'd like to use a variable as part of a regular expression as follows:
>      $ unpackHourlyWebLogs.bash  11 | gawk '(tolower($5) ~
("^/"+base+"/")) 
> {print $3,$5,$6}' base="f30" | head

unpackHourlyWebLogs.bash  11 | gawk -v base="f30" 'tolower($5) ~ "^/" base
"/"
{print $3,$5,$6} NR==10{exit}'

Someone had suggested you do something like this:

base="f30"
unpackHourlyWebLogs.bash  11 | gawk 'tolower($5) ~ "^/'"$base"'/" {print
$3,$5,$6} NR==10{exit}'

to use a shell variable in the middle of your awk script. Don't do that as
it
can lead to hard-to-diagnose failures, e.g.:

$ base="a"
$ printf "/a/\n/b/\n" | gawk -v base="$base" '$0 ~ "/"base"/"'
/a/
$ printf "/a/\n/b/\n" | gawk '$0 ~ "/'"$base"'/"'
/a/
$ base="
> "
$ printf "/a/\n/b/\n" | gawk -v base="$base" '$0 ~ "/"base"/"'
$ printf "/a/\n/b/\n" | gawk '$0 ~ "/'"$base"'/"'
gawk: $0 ~ "/
gawk:      ^ unterminated string

Regards,

	Ed.




 20 Posts in Topic:
using a variable to help define a regular expression
"tbh" <femde  2008-03-12 17:38:20 
Re: using a variable to help define a regular expression
Janis Papanagnou <Jani  2008-03-12 19:09:56 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 07:46:23 
Re: using a variable to help define a regular expression
schuler.steffen@[EMAIL PR  2008-03-12 16:13:49 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 07:49:28 
Re: using a variable to help define a regular expression
Lorenz <lorenznl@[EMAI  2008-03-13 07:02:29 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 07:50:13 
Re: using a variable to help define a regular expression
Steffen Schuler <schul  2008-03-13 08:40:12 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 12:12:53 
Re: using a variable to help define a regular expression
Lorenz <lorenznl@[EMAI  2008-03-13 12:35:05 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 15:00:37 
Re: using a variable to help define a regular expression
Janis <janis_papanagno  2008-03-13 01:41:08 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-13 09:06:18 
Re: using a variable to help define a regular expression
Ed Morton <morton@[EMA  2008-03-13 17:37:55 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-14 07:49:49 
Re: using a variable to help define a regular expression
Ed Morton <morton@[EMA  2008-03-14 07:15:02 
Re: using a variable to help define a regular expression
Janis <janis_papanagno  2008-03-14 02:09:22 
Re: using a variable to help define a regular expression
"tbh" <femde  2008-03-14 12:15:19 
Re: using a variable to help define a regular expression
Ed Morton <morton@[EMA  2008-03-14 07:50:03 
Re: using a variable to help define a regular expression
mjc <mjcohen@[EMAIL PR  2008-03-15 13:23:45 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri May 16 8:01:57 CDT 2008.