On Sunday 05 November 2006 09:03, Ken Irving wrote:
> On Fri, Nov 03, 2006 at 09:56:12PM -0500, Douglas Tutty wrote:
> > On Fri, Nov 03, 2006 at 08:27:42PM +0000, michael wrote:

[...]

> > > eg for
> > >
> > > junk info 18 Pro
> > > cessor
> > >
> > > I wish to get the field '18'

[...]

> >
> > Since it appears that newlines aren't significant, I would get rid of
> > them.
> >
> >     IN = open('IN')
> >     instring = IN.read()
> >     IN.close()
> >
> > I would remove all newlines so it was one huge line.
> >
> >     onelinestring = instring.replace('\n', ' ')
> >     del instring
> >
> > Split the string into a list of words
> >
> >     inlist = onelinestring.split()
> >     del onelinestring
> >
> > Iterate through the list looking for 'processor'
> >
> >     oldword = ' '
> >     for newword in inlist
> >             if word.lower == 'processor'
> >                     print oldword   # the previous word
> >             oldword = newword
> >
> >     del inlist
> >

[...]

>
> Is this pseudo-code or does it actually run?  I had to add some crypic
> noise, I mean ':' characters, in a couple of places, change "word" to
> "newword", and it still didn't seem to work.  The interesting part of
> the otherwise mundane problem was that the pattern to match is perhaps
> on two different lines.  I don't see how this is addressed in the
> proffered solution.

[...]

Here's a version of Douglas' python script that I got to run:

--------------------------------------------

#!/usr/bin/python 

IN = open('IN')
instring = IN.read()

onelinestring = instring.replace('\n', ' ')
 
inlist = onelinestring.split()

oldword = ' '

for newword in inlist:
 
        if newword == 'Processor':
                print oldword   
        oldword = newword
-------------------------------------------------------------

There were a couple of syntax errors in the original, but I think it does 
solve the two-line problem by removing the newlines.

Regards,

John


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to