From dbii at interaction.net Thu Aug 3 07:09:57 2006
From: dbii at interaction.net (David Bluestein II)
Date: Thu, 3 Aug 2006 09:09:57 -0500
Subject: APM: T-Shirt Order Summary--Last Call
Message-ID: <601e793e4a23d94dc538a894417622c9@interaction.net>
Everyone-
Here is what I have in terms of t-shirt requests, feel free to add
yourself to the list below and let me know the details of your shirt
order (quantity-size-color). I need to have final count tomorrow since
Omaha PM needs it by the 8th.
If your size isn't listed, put it in and send this back to me. If you
have not specified already, choose your color:
"BLACK": white print on black shirt
"ASH": black print on ash (grey) shirt
Rough cost estimate from Omaha is: "we're probably talking $8 USD per
shirt for XXL+, $6 USD for any smaller size" plus shipping the box to
Austin. So a dollar or two a shirt there. The estimate is arrive end of
August, early Sept, so we'll distribute at Sept APM. Once we have the
final count, I'll get a price from Omaha and we'll setup how to pay for
it.
Chris Connally (paid)
1 4XL black
1 4XL ash
Mark Lehmann
2 XXL
Jim Lacey
1 XL
Jack Lupton
1 XL
Ian Remmler
1
Sam Foster
1
David Bluestein
2 L ash
Wayne Walker
1
-----------------------------------------------------------------------
David H. Bluestein II
President & Lead Developer dbii at interaction.net
ii, inc.
http://www.interaction.net
-- Specializing in Interactive, Database Driven Websites --
From jeremy at msc.tamu.edu Thu Aug 3 07:16:34 2006
From: jeremy at msc.tamu.edu (Jeremy Fluhmann)
Date: Thu, 3 Aug 2006 09:16:34 -0500
Subject: APM: yapc 2007 bid
Message-ID: <0EFEDF9D507FF6409CE7B4D24B20E7BF0120D4B1@xchng.msc.tamu.edu>
In case anyone is interested, I submitted a bid to host YAPC::NA 2007 in
Houston. It's up against two other bids:
http://news.perlfoundation.org/2006/08/yapcna2007_call_for_venue_now.htm
l
A decision should be announced by Sept. 1st.
Jeremy
Jeremy Fluhmann
Programmer/Analyst
Memorial Student Center
Texas A&M University
979-845-8893
jeremy at msc.tamu.edu
This e-mail and any files transmitted with it are confidential. If you
are not the intended recipient, you are hereby notified that any
disclosure, copying, distribution, or use of the contents of this
information is prohibited. If you have received this e-mail transmission
in error, please notify me by telephone or via return e-mail and delete
this e-mail from your system.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060803/841acf19/attachment.html
From mjacobsen at vadoinc.com Fri Aug 4 17:11:39 2006
From: mjacobsen at vadoinc.com (Michelle Jacobsen)
Date: Fri, 4 Aug 2006 17:11:39 -0700
Subject: APM: I am looking for an OO Perl Developer!
Message-ID: <1B150662A9D37442A93D76DECECD107A685A22@vadoex1.vadoconsulting.com>
Hello again Perl Mongers!
My name is Michelle Jacobsen. I am a Technical Recruiter working for a
company called Vado. We specialize in placing IT & Engineering
professionals.
We have a client in Austin who is looking for an OO Perl Developer. It
is a long term contract position (18 months). Back in October 2005, it
was this Austin Perl Mongers site that led me to an excellent candidate.
I am hoping I can find someone again this time. :-) My client is
looking for another developer.
Here is the job description:
Our client is looking for a senior developer with experience writing
production-quality Perl. Expert in Object-Oriented programming. Deep
knowledge of programming practices as indicated by experience with
low-level languages, such as C and C++, IPC, distributed computing, data
structures, algorithms, version control. Must be able to work
independently with minimal direction, self-starter, takes initiative.
Our client is deploying their grid processing technology throughout the
company utilizing thousands of servers. They have a need for a highly
motivated; clear thinking, accomplished Senior Software Engineer. Will
be a key contributor in designing, implementing, and enhancing a
critical product.
Requirements:
- Senior developer with 5 or more years of experience.
- Works independently; focused on product completion and delivery.
- Capable of converting customer requirements into software design into
production code.
- Excellent communication skills; can work well on a team as a
collaborator.
- Object-oriented programming are required; proficiency with procedural
or structured are desirable.
- Strong analytical skills are required.
- Strong perl, apache/mod_perl, rdbms, sql, oracle; prefer experience
with high-level and low-level languages.
- Working knowledge of UNIX development environments is required,
especially Solaris and Linux; including basic Unix shells, make, version
control, compilers, interpreters.
- Familiarity with some of the following is highly desirable: databases,
embedded, relational, object-oriented; distributed computing, network
programming, IPC; grid computing, cluster computing.
- Knowledge of computer science fundamentals desirable.
- Preferred knowledge: Perl, Shell, Java, Javascript, ClearCase, CVS,
CORBA, TCP/IP; Web, HTML, HTTP; LSF, Condor.
- Excellent English written and verbal communication skills are
required, as this person will be working with several cross-function
teams.
Minimum Education: BS in CS or EE
Please send resumes to mjacobsen at vadoinc.com or feel free to call me
directly at (925) 824-3311.
I look forward to hearing with you.
Warm Regards,
Michelle Jacobsen
VADO, Inc.
(925) 824-3311
www.vadoinc.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060804/909e6d82/attachment.html
From ian at remmler.org Tue Aug 8 14:18:01 2006
From: ian at remmler.org (Ian Remmler)
Date: Tue, 8 Aug 2006 16:18:01 -0500
Subject: APM: Meeting
Message-ID: <20060808211801.GC10492@localhost>
Meeting. Tomorrow. 7:00 PM. At ARL. No presentation. Just
discussion, troubleshooting, hackathoning, emacs bashing, or
some combination thereof.
I don't think I can make it to dinner, so y'all figure out where
to eat. I'll update the web page this evening.
- Ian.
--
"A shark on whiskey is mighty risky.
A shark on beer is a beer engineer."
-- Dr. Worm
From ian at remmler.org Tue Aug 8 18:26:34 2006
From: ian at remmler.org (Ian Remmler)
Date: Tue, 8 Aug 2006 20:26:34 -0500
Subject: APM: Meeting
In-Reply-To: <20060808211801.GC10492@localhost>
References: <20060808211801.GC10492@localhost>
Message-ID: <20060809012634.GA10987@localhost>
On Tue, Aug 08, 2006 at 04:18:01PM -0500, Ian Remmler wrote:
> I don't think I can make it to dinner, so y'all figure out where
> to eat. I'll update the web page this evening.
I can dine after all. Where do we want to eat? Double Dave's?
Pok-E-Jo's? Somewhere else?
--
"A shark on whiskey is mighty risky.
A shark on beer is a beer engineer."
-- Dr. Worm
From dbii at interaction.net Tue Aug 8 19:54:53 2006
From: dbii at interaction.net (David Bluestein II)
Date: Tue, 8 Aug 2006 21:54:53 -0500
Subject: APM: Meeting
In-Reply-To: <20060809012634.GA10987@localhost>
References: <20060808211801.GC10492@localhost>
<20060809012634.GA10987@localhost>
Message-ID:
I vote for Pok-e Jo's.
On Aug 8, 2006, at 8:26 PM, Ian Remmler wrote:
> On Tue, Aug 08, 2006 at 04:18:01PM -0500, Ian Remmler wrote:
>> I don't think I can make it to dinner, so y'all figure out where
>> to eat. I'll update the web page this evening.
>
> I can dine after all. Where do we want to eat? Double Dave's?
> Pok-E-Jo's? Somewhere else?
>
> --
> "A shark on whiskey is mighty risky.
> A shark on beer is a beer engineer."
> -- Dr. Worm
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
>
-----------------------------------------------------------------------
David H. Bluestein II
President & Lead Developer dbii at interaction.net
ii, inc.
http://www.interaction.net
-- Specializing in Interactive, Database Driven Websites --
From wwalker at bybent.com Tue Aug 8 20:17:07 2006
From: wwalker at bybent.com (Wayne Walker)
Date: Tue, 8 Aug 2006 22:17:07 -0500
Subject: APM: Meeting
In-Reply-To: <20060809012634.GA10987@localhost>
References: <20060808211801.GC10492@localhost>
<20060809012634.GA10987@localhost>
Message-ID: <20060809031707.GC3700@bybent.com>
I can't make it this week. got to meet the teacher for my 1st grader.
(His Kindergarten teacher was very attractive, wonder how cute this one
will be :)
On Tue, Aug 08, 2006 at 08:26:34PM -0500, Ian Remmler wrote:
> On Tue, Aug 08, 2006 at 04:18:01PM -0500, Ian Remmler wrote:
> > I don't think I can make it to dinner, so y'all figure out where
> > to eat. I'll update the web page this evening.
>
> I can dine after all. Where do we want to eat? Double Dave's?
> Pok-E-Jo's? Somewhere else?
>
> --
> "A shark on whiskey is mighty risky.
> A shark on beer is a beer engineer."
> -- Dr. Worm
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
--
Wayne Walker
www.unwiredbuyer.com - when you just can't be by the computer
wwalker at bybent.com Do you use Linux?!
http://www.bybent.com Get Counted! http://counter.li.org/
Perl - http://www.perl.org/ Perl User Groups - http://www.pm.org/
Jabber: wwalker at jabber.gnumber.com AIM: lwwalkerbybent
IRC: wwalker on freenode.net
From ian at remmler.org Wed Aug 9 05:19:27 2006
From: ian at remmler.org (Ian Remmler)
Date: Wed, 9 Aug 2006 07:19:27 -0500
Subject: APM: Meeting
In-Reply-To:
References: <20060808211801.GC10492@localhost>
<20060809012634.GA10987@localhost>
Message-ID: <20060809121927.GA12014@localhost>
On Tue, Aug 08, 2006 at 09:54:53PM -0500, David Bluestein II wrote:
> I vote for Pok-e Jo's.
Pok-e-Jo's it is!
--
"A shark on whiskey is mighty risky.
A shark on beer is a beer engineer."
-- Dr. Worm
From cbl_mbi1 at yahoo.com Tue Aug 15 12:22:32 2006
From: cbl_mbi1 at yahoo.com (Brian Little)
Date: Tue, 15 Aug 2006 12:22:32 -0700 (PDT)
Subject: APM: OT: contractor work in Austin
In-Reply-To: <1B150662A9D37442A93D76DECECD107A685A22@vadoex1.vadoconsulting.com>
Message-ID: <20060815192232.26534.qmail@web38803.mail.mud.yahoo.com>
I'm new to the Austin area and in the process of looking for a job. I got offered a
project as an independent contractor. I was wondering how overtime is handled here in
Austin for contractors. Is it typically paid at straight time or time and a half?
Does anyone have experience with this?
BTW, this is indirectly related to Perl since the position is for a Perl developer. :)
Thanks,
Brian Little
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
From Barron.Snyder at wholefoods.com Wed Aug 16 07:32:57 2006
From: Barron.Snyder at wholefoods.com (Barron Snyder (CE CEN))
Date: Wed, 16 Aug 2006 09:32:57 -0500
Subject: APM: Regular Expression Question
Message-ID: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
$piece =~ s/\t/\"\t\"/g;
With the above code I'm searching for all tab characters and replacing
them with a tab surrounded by double-quotes. Is there a way without
putting this in a coding loop, to replace say, only the first three
instances it finds in $piece? It seems like a nice way to do this would
to be able to replace the "g" with an integer indicating how many
replacements to do but it doesn't seem to work like that .
I'm parsing some columnar data (7 columns) and I want to put
double-quotes around the first six columns. I've figured out a way to do
it but it's kind of clumsy. I thought you experts may be able to show a
Perl newbie a more elegant way to do it.
Thanks,
Barron Snyder
Software Development, Financial Systems Team
Whole Foods Market, HQ
barron.snyder at wholefoods.com
This email contains proprietary and confidential material for the sole
use of the intended recipient. Any review, use, distribution or
disclosure by others without the permission of the sender is strictly
prohibited. If you are not the intended recipient (or authorized to
receive for the recipient), please contact the sender by reply email and
delete all copies of the message.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060816/1e2b749f/attachment.html
From jayflaherty at gmail.com Wed Aug 16 08:32:54 2006
From: jayflaherty at gmail.com (Jay Flaherty)
Date: Wed, 16 Aug 2006 10:32:54 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
References: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
Message-ID: <6d099db20608160832vbf4c505q3157129d511b22f5@mail.gmail.com>
try
$piece =~ s/\t{0,3}/\"\t\"/g;
This is an interval quantifier where {0,3} means you require a minimum
of 0 matches up to a maximum of 3 matches
This is untested of course.
Jay
On 8/16/06, Barron Snyder (CE CEN) wrote:
>
>
>
>
> $piece =~ s/\t/\"\t\"/g;
>
>
>
> With the above code I'm searching for all tab characters and replacing them
> with a tab surrounded by double-quotes. Is there a way without putting this
> in a coding loop, to replace say, only the first three instances it finds in
> $piece? It seems like a nice way to do this would to be able to replace the
> "g" with an integer indicating how many replacements to do but it doesn't
> seem to work like that .
>
>
>
> I'm parsing some columnar data (7 columns) and I want to put double-quotes
> around the first six columns. I've figured out a way to do it but it's kind
> of clumsy. I thought you experts may be able to show a Perl newbie a more
> elegant way to do it.
>
>
>
> Thanks,
>
>
>
> Barron Snyder
>
> Software Development, Financial Systems Team
>
> Whole Foods Market, HQ
>
> barron.snyder at wholefoods.com
>
>
>
> This email contains proprietary and confidential material for the sole use
> of the intended recipient. Any review, use, distribution or disclosure by
> others without the permission of the sender is strictly prohibited. If you
> are not the intended recipient (or authorized to receive for the recipient),
> please contact the sender by reply email and delete all copies of the
> message.
>
>
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
>
>
--
****************************************************
Whatever you do, take care of your shoes
jayflaherty at gmail.com
From zvonler at gmail.com Wed Aug 16 08:41:47 2006
From: zvonler at gmail.com (Zach Vonler)
Date: Wed, 16 Aug 2006 10:41:47 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <6d099db20608160832vbf4c505q3157129d511b22f5@mail.gmail.com>
References: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
<6d099db20608160832vbf4c505q3157129d511b22f5@mail.gmail.com>
Message-ID: <1d0b0a8f0608160841x11aa849eo142fe50a39aafe3@mail.gmail.com>
On 8/16/06, Jay Flaherty wrote:
> $piece =~ s/\t{0,3}/\"\t\"/g;
There are two problems with this one, the first being that you have
the ability to match on a null string, and the second being that
whatever does get matched is replaced by only a single "\t".
If the number of fields you want to modify is in $count, something like
$repl = "\\\"\\t\\\"" x $count;
$piece =~ s/\t{$count,$count}/$repl/;
might get you most of the way there. Note of course that it does not
modify inputs with fewer than $count fields.
Later,
Zach
From Barron.Snyder at wholefoods.com Wed Aug 16 08:56:34 2006
From: Barron.Snyder at wholefoods.com (Barron Snyder (CE CEN))
Date: Wed, 16 Aug 2006 10:56:34 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <1d0b0a8f0608160841x11aa849eo142fe50a39aafe3@mail.gmail.com>
Message-ID: <28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
Here is some sample data (input):
FL 999-NO_SUBTEAM Actuals ASSETS FY2006 6 19,416.86
FL DP-999 Actuals 150000 FY2006 6 19,416.86
FL DP-999 Actuals WIP FY2006 6 19,416.86
FL DP-999 Actuals TOT_PPE FY2006 6 19,416.86
FL DP-999 Actuals LT_ASSET FY2006 6 19,416.86
FL DP-999 Actuals ASSETS FY2006 6 19,416.86
FL NON_MARGIN Actuals 510000 FY2006 6 11,866.97
FL NON_MARGIN Actuals SUPP_PKG FY2006 6
11,866.97
And here is what it should end up like (output):
"FL" "999-NO_SUBTEAM" "Actuals" "ASSETS" "FY2006"
"6" 19,416.86
"FL" "DP-999" "Actuals" "150000" "FY2006"
"6" 19,416.86
"FL" "DP-999" "Actuals" "WIP" "FY2006" "6"
19,416.86
"FL" "DP-999" "Actuals" "TOT_PPE" "FY2006"
"6" 19,416.86
"FL" "DP-999" "Actuals" "LT_ASSET" "FY2006"
"6" 19,416.86
"FL" "DP-999" "Actuals" "ASSETS" "FY2006"
"6" 19,416.86
"FL" "NON_MARGIN" "Actuals" "510000" "FY2006"
"6" 11,866.97
"FL" "NON_MARGIN" "Actuals" "SUPP_PKG" "FY2006"
"6" 11,866.97
All values except those in the final column should be wrapped in
double-quotes and tabs should separate the values.
My solution does it like this:
...
foreach my $piece (@pieces) {
my @strings = split(/\t/, $piece);
print DATA_OUT "\"", join ("\"\t\"", $strings[0], $strings[1],
$strings[2], $strings[3], $strings[4], $strings[5]), "\"\t",
$strings[6], "\n";
}
...
But as I mentioned, in my effort to learn more about Perl, I thout there
may be a more elegant way using regular expressions.
Thanks,
Barron Snyder
-----Original Message-----
From: austin-bounces+barron.snyder=wholefoods.com at pm.org
[mailto:austin-bounces+barron.snyder=wholefoods.com at pm.org] On Behalf Of
Zach Vonler
Sent: Wednesday, August 16, 2006 10:42 AM
To: austin at pm.org
Subject: Re: APM: Regular Expression Question
On 8/16/06, Jay Flaherty wrote:
> $piece =~ s/\t{0,3}/\"\t\"/g;
There are two problems with this one, the first being that you have
the ability to match on a null string, and the second being that
whatever does get matched is replaced by only a single "\t".
If the number of fields you want to modify is in $count, something like
$repl = "\\\"\\t\\\"" x $count;
$piece =~ s/\t{$count,$count}/$repl/;
might get you most of the way there. Note of course that it does not
modify inputs with fewer than $count fields.
Later,
Zach
_______________________________________________
Austin mailing list
Austin at pm.org
http://mail.pm.org/mailman/listinfo/austin
From zvonler at gmail.com Wed Aug 16 09:10:44 2006
From: zvonler at gmail.com (Zach Vonler)
Date: Wed, 16 Aug 2006 11:10:44 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
References: <1d0b0a8f0608160841x11aa849eo142fe50a39aafe3@mail.gmail.com>
<28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
Message-ID: <1d0b0a8f0608160910t138ebafal80a7f7ecb88a6469@mail.gmail.com>
On 8/16/06, Barron Snyder (CE CEN) wrote:
> foreach my $piece (@pieces) {
> my @strings = split(/\t/, $piece);
> print DATA_OUT "\"", join ("\"\t\"", $strings[0], $strings[1],
> $strings[2], $strings[3], $strings[4], $strings[5]), "\"\t",
> $strings[6], "\n";
> }
In that case, I think using regexes makes the problem harder, not
easier. How about the following instead:
my @strings = split /\t/, $piece;
print DATA_OUT "\"", join("\"\t\"", @strings[0..5]), "\"\t$string[6]\n";
Essentially the same as what you were doing. Split and join are
highly optimized, so I think they're a win over trying to do this in a
regex.
Later,
Zach
From dbii at interaction.net Wed Aug 16 09:12:09 2006
From: dbii at interaction.net (David Bluestein II)
Date: Wed, 16 Aug 2006 11:12:09 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <6d099db20608160832vbf4c505q3157129d511b22f5@mail.gmail.com>
References: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
<6d099db20608160832vbf4c505q3157129d511b22f5@mail.gmail.com>
Message-ID: <9ff3eda2c3a2494d47e1c33ed46c2372@interaction.net>
The interval qualifier matches number of characters adjacent, so this
would match strings (excluding double quotes):
""
"\t"
"\t\t"
"\t\t\t"
so it is looking for \t adjacent to each other.
David
On Aug 16, 2006, at 10:32 AM, Jay Flaherty wrote:
> try
> $piece =~ s/\t{0,3}/\"\t\"/g;
> This is an interval quantifier where {0,3} means you require a minimum
> of 0 matches up to a maximum of 3 matches
>
> This is untested of course.
>
> Jay
>
> On 8/16/06, Barron Snyder (CE CEN)
> wrote:
>>
>>
>>
>>
>> $piece =~ s/\t/\"\t\"/g;
>>
>>
>>
>> With the above code I'm searching for all tab characters and
>> replacing them
>> with a tab surrounded by double-quotes. Is there a way without
>> putting this
>> in a coding loop, to replace say, only the first three instances it
>> finds in
>> $piece? It seems like a nice way to do this would to be able to
>> replace the
>> "g" with an integer indicating how many replacements to do but it
>> doesn't
>> seem to work like that .
>>
>>
>>
>> I'm parsing some columnar data (7 columns) and I want to put
>> double-quotes
>> around the first six columns. I've figured out a way to do it but
>> it's kind
>> of clumsy. I thought you experts may be able to show a Perl newbie a
>> more
>> elegant way to do it.
>>
>>
>>
>> Thanks,
>>
>>
>>
>> Barron Snyder
>>
>> Software Development, Financial Systems Team
>>
>> Whole Foods Market, HQ
>>
>> barron.snyder at wholefoods.com
>>
>>
>>
>> This email contains proprietary and confidential material for the
>> sole use
>> of the intended recipient. Any review, use, distribution or
>> disclosure by
>> others without the permission of the sender is strictly prohibited.
>> If you
>> are not the intended recipient (or authorized to receive for the
>> recipient),
>> please contact the sender by reply email and delete all copies of the
>> message.
>>
>>
>> _______________________________________________
>> Austin mailing list
>> Austin at pm.org
>> http://mail.pm.org/mailman/listinfo/austin
>>
>>
>
>
> --
> ****************************************************
> Whatever you do, take care of your shoes
> jayflaherty at gmail.com
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
>
-----------------------------------------------------------------------
David H. Bluestein II
President & Lead Developer dbii at interaction.net
ii, inc.
http://www.interaction.net
-- Specializing in Interactive, Database Driven Websites --
From jeff_sumner at hotmail.com Wed Aug 16 09:12:56 2006
From: jeff_sumner at hotmail.com (Jeff Sumner)
Date: Wed, 16 Aug 2006 16:12:56 +0000
Subject: APM: Regular Expression Question
In-Reply-To: <28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
Message-ID:
What about simply using backreferences
while ($line = <>) {
if ($line =~ /(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)/) {
print qw{"$1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6"\t$7};
}
}
Or I suppose you could do it in one line
s/(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)\t(\S+)\n/"$1"\t"$2"\t"$3"\t"$4"\t"$5"\t"$6"\t$7\n/g
Jeff Sumner
>From: "Barron Snyder (CE CEN)"
>To:
>Subject: Re: APM: Regular Expression Question
>Date: Wed, 16 Aug 2006 10:56:34 -0500
>
>Here is some sample data (input):
>FL 999-NO_SUBTEAM Actuals ASSETS FY2006 6 19,416.86
>FL DP-999 Actuals 150000 FY2006 6 19,416.86
>FL DP-999 Actuals WIP FY2006 6 19,416.86
>FL DP-999 Actuals TOT_PPE FY2006 6 19,416.86
>FL DP-999 Actuals LT_ASSET FY2006 6 19,416.86
>FL DP-999 Actuals ASSETS FY2006 6 19,416.86
>FL NON_MARGIN Actuals 510000 FY2006 6 11,866.97
>FL NON_MARGIN Actuals SUPP_PKG FY2006 6
>11,866.97
>
>And here is what it should end up like (output):
>"FL" "999-NO_SUBTEAM" "Actuals" "ASSETS" "FY2006"
>"6" 19,416.86
>"FL" "DP-999" "Actuals" "150000" "FY2006"
>"6" 19,416.86
>"FL" "DP-999" "Actuals" "WIP" "FY2006" "6"
>19,416.86
>"FL" "DP-999" "Actuals" "TOT_PPE" "FY2006"
>"6" 19,416.86
>"FL" "DP-999" "Actuals" "LT_ASSET" "FY2006"
>"6" 19,416.86
>"FL" "DP-999" "Actuals" "ASSETS" "FY2006"
>"6" 19,416.86
>"FL" "NON_MARGIN" "Actuals" "510000" "FY2006"
>"6" 11,866.97
>"FL" "NON_MARGIN" "Actuals" "SUPP_PKG" "FY2006"
>"6" 11,866.97
>
>All values except those in the final column should be wrapped in
>double-quotes and tabs should separate the values.
>
>My solution does it like this:
>...
>foreach my $piece (@pieces) {
> my @strings = split(/\t/, $piece);
> print DATA_OUT "\"", join ("\"\t\"", $strings[0], $strings[1],
>$strings[2], $strings[3], $strings[4], $strings[5]), "\"\t",
>$strings[6], "\n";
>}
>...
>
>But as I mentioned, in my effort to learn more about Perl, I thout there
>may be a more elegant way using regular expressions.
>
>Thanks,
>
>Barron Snyder
>
>-----Original Message-----
>From: austin-bounces+barron.snyder=wholefoods.com at pm.org
>[mailto:austin-bounces+barron.snyder=wholefoods.com at pm.org] On Behalf Of
>Zach Vonler
>Sent: Wednesday, August 16, 2006 10:42 AM
>To: austin at pm.org
>Subject: Re: APM: Regular Expression Question
>
>On 8/16/06, Jay Flaherty wrote:
> > $piece =~ s/\t{0,3}/\"\t\"/g;
>
>There are two problems with this one, the first being that you have
>the ability to match on a null string, and the second being that
>whatever does get matched is replaced by only a single "\t".
>
>If the number of fields you want to modify is in $count, something like
>
>$repl = "\\\"\\t\\\"" x $count;
>$piece =~ s/\t{$count,$count}/$repl/;
>
>might get you most of the way there. Note of course that it does not
>modify inputs with fewer than $count fields.
>
>Later,
>Zach
>_______________________________________________
>Austin mailing list
>Austin at pm.org
>http://mail.pm.org/mailman/listinfo/austin
>_______________________________________________
>Austin mailing list
>Austin at pm.org
>http://mail.pm.org/mailman/listinfo/austin
From tim at toolman.org Wed Aug 16 09:03:50 2006
From: tim at toolman.org (Tim Peoples)
Date: Wed, 16 Aug 2006 11:03:50 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
References: <28CEB74C14F56548BC3F1504129E99F50149D1EC@wfm-exchprd5.wfm.pvt>
Message-ID: <44E341E6.2050703@toolman.org>
I think what you're looking for is something like this:
$cnt = 6;
$piece =~ s/(?
> $piece =~ s/\t/\"\t\"/g;
>
>
>
> With the above code I'm searching for all tab characters and replacing
> them with a tab surrounded by double-quotes. Is there a way without
> putting this in a coding loop, to replace say, only the first three
> instances it finds in $piece? It seems like a nice way to do this
> would to be able to replace the "g" with an integer indicating how
> many replacements to do but it doesn't seem to work like that .
>
>
>
> I'm parsing some columnar data (7 columns) and I want to put
> double-quotes around the first six columns. I've figured out a way to
> do it but it's kind of clumsy. I thought you experts may be able to
> show a Perl newbie a more elegant way to do it.
>
>
>
> Thanks,
>
>
>
> Barron Snyder
>
> Software Development, Financial Systems Team
>
> *Whole Foods Market, HQ*
>
> barron.snyder at wholefoods.com
>
>
>
> This email contains proprietary and confidential material for the sole
> use of the intended recipient. Any review, use, distribution or
> disclosure by others without the permission of the sender is strictly
> prohibited. If you are not the intended recipient (or authorized to
> receive for the recipient), please contact the sender by reply email
> and delete all copies of the message.
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
--
_______________________________________________________________________
Timothy E. Peoples
Have Camel, Will Code
tim at toolman.org
This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060816/d64b9218/attachment.html
From tim at toolman.org Wed Aug 16 09:12:51 2006
From: tim at toolman.org (Tim Peoples)
Date: Wed, 16 Aug 2006 11:12:51 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
References: <28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
Message-ID: <44E34403.7020409@toolman.org>
Ahhh... in that case, I'd think you really want a split-map-join
construct like so:
foreach my $piece (@pieces) {
$cnt = 6;
print join("\t", map { ($cnt-- > 0) ? "\"$_\"" : $_ }
split(/\t/, $piece)), "\n";;
}
Tim.
Barron Snyder (CE CEN) wrote:
> Here is some sample data (input):
> FL 999-NO_SUBTEAM Actuals ASSETS FY2006 6 19,416.86
> FL DP-999 Actuals 150000 FY2006 6 19,416.86
> FL DP-999 Actuals WIP FY2006 6 19,416.86
> FL DP-999 Actuals TOT_PPE FY2006 6 19,416.86
> FL DP-999 Actuals LT_ASSET FY2006 6 19,416.86
> FL DP-999 Actuals ASSETS FY2006 6 19,416.86
> FL NON_MARGIN Actuals 510000 FY2006 6 11,866.97
> FL NON_MARGIN Actuals SUPP_PKG FY2006 6
> 11,866.97
>
> And here is what it should end up like (output):
> "FL" "999-NO_SUBTEAM" "Actuals" "ASSETS" "FY2006"
> "6" 19,416.86
> "FL" "DP-999" "Actuals" "150000" "FY2006"
> "6" 19,416.86
> "FL" "DP-999" "Actuals" "WIP" "FY2006" "6"
> 19,416.86
> "FL" "DP-999" "Actuals" "TOT_PPE" "FY2006"
> "6" 19,416.86
> "FL" "DP-999" "Actuals" "LT_ASSET" "FY2006"
> "6" 19,416.86
> "FL" "DP-999" "Actuals" "ASSETS" "FY2006"
> "6" 19,416.86
> "FL" "NON_MARGIN" "Actuals" "510000" "FY2006"
> "6" 11,866.97
> "FL" "NON_MARGIN" "Actuals" "SUPP_PKG" "FY2006"
> "6" 11,866.97
>
> All values except those in the final column should be wrapped in
> double-quotes and tabs should separate the values.
>
> My solution does it like this:
> ...
> foreach my $piece (@pieces) {
> my @strings = split(/\t/, $piece);
> print DATA_OUT "\"", join ("\"\t\"", $strings[0], $strings[1],
> $strings[2], $strings[3], $strings[4], $strings[5]), "\"\t",
> $strings[6], "\n";
> }
> ...
>
> But as I mentioned, in my effort to learn more about Perl, I thout there
> may be a more elegant way using regular expressions.
>
> Thanks,
>
> Barron Snyder
>
> -----Original Message-----
> From: austin-bounces+barron.snyder=wholefoods.com at pm.org
> [mailto:austin-bounces+barron.snyder=wholefoods.com at pm.org] On Behalf Of
> Zach Vonler
> Sent: Wednesday, August 16, 2006 10:42 AM
> To: austin at pm.org
> Subject: Re: APM: Regular Expression Question
>
> On 8/16/06, Jay Flaherty wrote:
>
>> $piece =~ s/\t{0,3}/\"\t\"/g;
>>
>
> There are two problems with this one, the first being that you have
> the ability to match on a null string, and the second being that
> whatever does get matched is replaced by only a single "\t".
>
> If the number of fields you want to modify is in $count, something like
>
> $repl = "\\\"\\t\\\"" x $count;
> $piece =~ s/\t{$count,$count}/$repl/;
>
> might get you most of the way there. Note of course that it does not
> modify inputs with fewer than $count fields.
>
> Later,
> Zach
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
> _______________________________________________
> Austin mailing list
> Austin at pm.org
> http://mail.pm.org/mailman/listinfo/austin
>
>
--
_______________________________________________________________________
Timothy E. Peoples
Have Camel, Will Code
tim at toolman.org
This message and any attachments are intended only for the use of the addressee and may contain information that is privileged and confidential. If the reader of the message is not the intended recipient or an authorized representative of the intended recipient, you are hereby notified that any dissemination of this communication is strictly prohibited. If you have received this communication in error, please notify us immediately by e-mail and delete the message and any attachments from your system.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060816/0a687f8a/attachment-0001.html
From wwalker at bybent.com Wed Aug 16 14:53:07 2006
From: wwalker at bybent.com (Wayne Walker)
Date: Wed, 16 Aug 2006 16:53:07 -0500
Subject: APM: Regular Expression Question
In-Reply-To: <1d0b0a8f0608160910t138ebafal80a7f7ecb88a6469@mail.gmail.com>
References: <1d0b0a8f0608160841x11aa849eo142fe50a39aafe3@mail.gmail.com>
<28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
<1d0b0a8f0608160910t138ebafal80a7f7ecb88a6469@mail.gmail.com>
Message-ID: <20060816215307.GB14154@bybent.com>
# split/join solution:
foreach my $piece (@pieces) {
# split into separate columns
my @columns = split(/\t/, $piece);
# pop off last column since we don't want to quote it
my $last_column = pop @columns;
# use qq with "'s as it's easier to read, IMO
# use map to quote the columns
# tack on the last column and it's associated whitespace
print join("\t", map { qq("$_") } @columns), "\t$last_column\n";
}
# format solution - exercise for the student, but I think perl's format
# statement would make this something like:
format FORMATNAME = "^*"\t"^*"\t"^*"\t"^*"\t"^*"\t"^*"\t^*
foreach my $piece (@pieces) {
# split into separate columns
my @columns = split(/\t/, $piece);
print FORMATNAME, @columns;
}
# I've not used FORMAT in more than a decade!
# one regex solution
# use $_ for brevity/clarity
foreach (@pieces) {
s/^/"/; # add a leading "
s/\t/"\t"/g;
s/"(\S+)/\1/; # Replace the last quote and that which follows it, with
# just what follows it
print;
}
The split/join is probably fastest. I did not test any of the above
code.
--
Wayne Walker
www.unwiredbuyer.com - when you just can't be by the computer
wwalker at bybent.com Do you use Linux?!
http://www.bybent.com Get Counted! http://counter.li.org/
Perl - http://www.perl.org/ Perl User Groups - http://www.pm.org/
Jabber: wwalker at jabber.gnumber.com AIM: lwwalkerbybent
IRC: wwalker on freenode.net
From tmcd at panix.com Wed Aug 16 16:02:13 2006
From: tmcd at panix.com (tmcd at panix.com)
Date: Wed, 16 Aug 2006 18:02:13 -0500 (CDT)
Subject: APM: Regular Expression Question
In-Reply-To: <20060816215307.GB14154@bybent.com>
References: <1d0b0a8f0608160841x11aa849eo142fe50a39aafe3@mail.gmail.com>
<28CEB74C14F56548BC3F1504129E99F50149D266@wfm-exchprd5.wfm.pvt>
<1d0b0a8f0608160910t138ebafal80a7f7ecb88a6469@mail.gmail.com>
<20060816215307.GB14154@bybent.com>
Message-ID:
On Wed, 16 Aug 2006, Wayne Walker wrote:
> The split/join is probably fastest.
In many cases, the speed or memory footprint of a script doesn't
matter -- it depends on the execution time and how often it's run.
I think it's best, in general, to get the version that's easiest to
understand and to change, and worry about optimization only if it's
clear that it will suck down, or is sucking down, a significant amount
of the system resources. And, often enough, the solution that's
easiest to understand and change is close enough to the solution
that's fastest.
print("Just Another Pint-Sized Polonius ...\n");
--
Tim McDaniel; Reply-To: tmcd at panix.com
From mjacobsen at vadoinc.com Thu Aug 17 13:05:07 2006
From: mjacobsen at vadoinc.com (Michelle Jacobsen)
Date: Thu, 17 Aug 2006 13:05:07 -0700
Subject: APM: FW: I am looking for an OO Perl Developer!
Message-ID: <1B150662A9D37442A93D76DECECD107A86F874@vadoex1.vadoconsulting.com>
Hello,
We are still looking for a talented Perl Developer for our client in
Austin.
Here are some additional specifics on the position in addition to the
job description below:
The candidate will be responsible for achieving 2 important milestones
within 6 months. The first is to prepare a new RDBMS back-end of a
current persistent-server IT application for a Unix/Linux production
environment. The second is to migrate current web reports into a
production-ready Apache/mod_perl framework from a custom
persistent-server framework. They need to be extremely proficient with
object-oriented perl, RDBMS, SQL, Apache and mod_perl. Upon completion
of the initial milestones, the candidate will continue work with the
deployment group to prepare installations for production, including
creation/migration of additional reports or minor enhancements to DB
interface. This is a global team; it is imperative that the candidate
be accustomed to working with deadlines, work independently with little
direction, is capable of creative problem solving, interacts well with
team members and documents their work and code well and habitually.
Please let me know if you are interested or perhaps know anyone who
would be interested in this opportunity!
I appreciate your consideration and look forward to hearing from you!
Warm Regards,
Michelle Jacobsen
VADO, Inc.
(925) 824-3311
www.vadoinc.com
-----Original Message-----
From: Michelle Jacobsen
Sent: Friday, August 04, 2006 5:12 PM
To: austin at pm.org
Subject: APM: I am looking for an OO Perl Developer!
Hello again Perl Mongers!
My name is Michelle Jacobsen. I am a Technical Recruiter working for a
company called Vado. We specialize in placing IT & Engineering
professionals.
We have a client in Austin who is looking for an OO Perl Developer. It
is a long term contract position (18 months). Back in October 2005, it
was this Austin Perl Mongers site that led me to an excellent candidate.
I am hoping I can find someone again this time. :-) My client is
looking for another developer.
Here is the job description:
Our client is looking for a senior developer with experience writing
production-quality Perl. Expert in Object-Oriented programming. Deep
knowledge of programming practices as indicated by experience with
low-level languages, such as C and C++, IPC, distributed computing, data
structures, algorithms, version control. Must be able to work
independently with minimal direction, self-starter, takes initiative.
Our client is deploying their grid processing technology throughout the
company utilizing thousands of servers. They have a need for a highly
motivated; clear thinking, accomplished Senior Software Engineer. Will
be a key contributor in designing, implementing, and enhancing a
critical product.
Requirements:
- Senior developer with 5 or more years of experience.
- Works independently; focused on product completion and delivery.
- Capable of converting customer requirements into software design into
production code.
- Excellent communication skills; can work well on a team as a
collaborator.
- Object-oriented programming are required; proficiency with procedural
or structured are desirable.
- Strong analytical skills are required.
- Strong perl, apache/mod_perl, rdbms, sql, oracle; prefer experience
with high-level and low-level languages.
- Working knowledge of UNIX development environments is required,
especially Solaris and Linux; including basic Unix shells, make, version
control, compilers, interpreters.
- Familiarity with some of the following is highly desirable: databases,
embedded, relational, object-oriented; distributed computing, network
programming, IPC; grid computing, cluster computing.
- Knowledge of computer science fundamentals desirable.
- Preferred knowledge: Perl, Shell, Java, Javascript, ClearCase, CVS,
CORBA, TCP/IP; Web, HTML, HTTP; LSF, Condor.
- Excellent English written and verbal communication skills are
required, as this person will be working with several cross-function
teams.
Minimum Education: BS in CS or EE
Please send resumes to mjacobsen at vadoinc.com or feel free to call me
directly at (925) 824-3311.
I look forward to hearing with you.
Warm Regards,
Michelle Jacobsen
VADO, Inc.
(925) 824-3311
www.vadoinc.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.pm.org/pipermail/austin/attachments/20060817/f8bd1de1/attachment.html