1. RE: strtok question

But then I'm essentially making two passes to get what I want (first 
pass to replace, second to parse).  I was wondering if there was a way 
to get what I want with just one pass...

-- Brian

Kat wrote:
> On 12 Mar 2003, at 19:31, Brian Broker wrote:
> 
> > 
> > For Kat or any others familiar with the lib:
> > 
> > Question:  Is there an easy way to keep some separators while removing 
> > others?  For example, if I was parsing a BASIC-like language and I 
> > wanted to keep comparison and math operators while stripping white 
> > space?
> > 
> > example:
> > if x=y then --> {"if","x","=","y","then"}
> > 
> > I was hoping to do a single pass because I figured I could always first 
> > replace "=" with " = " then parse on white space...
> 
> I don't understand the question. If you replace "=" with " = ", parse() 
> will 
> return as you give in your example.
> 
> Kat
> 
>

new topic     » topic index » view message » categorize

2. RE: strtok question

On 12 Mar 2003, at 20:22, Brian Broker wrote:

> 
> But then I'm essentially making two passes to get what I want (first 
> pass to replace, second to parse).  I was wondering if there was a way 
> to get what I want with just one pass...

Not with the currently released version of strtok, because you have no 
delimiters around the "=" in your example, the complete token being "x=y". 
In next release, i will be supplying an optional form to keep multiple selected 
separators. Even then, there will be multiple passes thru the list of 
separators supplied as the 2nd param of parse(), it will just be hidden from 
you.

Kat


> -- Brian
> 
> Kat wrote:
> > On 12 Mar 2003, at 19:31, Brian Broker wrote:
> > 
> > > 
> > > For Kat or any others familiar with the lib:
> > > 
> > > Question:  Is there an easy way to keep some separators while removing
> > > others?  For example, if I was parsing a BASIC-like language and I wanted
> > > to
> > > keep comparison and math operators while stripping white space?
> > > 
> > > example:
> > > if x=y then --> {"if","x","=","y","then"}
> > > 
> > > I was hoping to do a single pass because I figured I could always first
> > > replace "=" with " = " then parse on white space...
> > 
> > I don't understand the question. If you replace "=" with " = ", parse() 
> > will 
> > return as you give in your example.
> > 
> > Kat
> > 
> > 
> 
> 
> TOPICA - Start your own email discussion group. FREE!
>

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu