Formatted read of tokens?

Jerry via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Jun 17 21:57:23 PDT 2014


"John Colvin" <john.loughran.colvin at gmail.com> writes:

> On Tuesday, 17 June 2014 at 13:16:38 UTC, Jerry wrote:
>> "bearophile" <bearophileHUGS at lycos.com> writes:
>>
>>> Jerry:
>>>
>>>> If I do
>>>>
>>>> f.readf("%s %s", &l, &i);
>>>>
>>>> it fails if the whitespace is a tab.
>>>
>>> In you can use byLine, followed by a split, and then assignment of the
>>> pieces,
>>> followed by to!int where necessary.
>>
>> I actually can't use byLine in this instance.  I'm really wanting the %s
>> behavior of scanf().
>
> If you really need/want fscanf behaviour then just use it:
>
> import core.stdc.stdio : fscanf;

Thanks, I forgot the obvious.

It would be nice to have a way to do the same thing in D formatted
reading.  Does it seem like it would be useful to specify this kind of
thing?

For example, you could have:

%' '         grabs all isWhite() chars
%t           reads a single token - all chars !isWhite()

Any takers?

Jerry


More information about the Digitalmars-d-learn mailing list