
On Mon, Nov 23, 2009 at 2:50 PM, Al Gambardella
I have an input text file that I read line by line into a standard string.
Each line has the following format:
Name1 00 12 3a 4c ff …
Name2 33 55 5c dd ee …
How do create the grammer to skip the leading NameX on each line and put the hex digits into a vector?
If the lines had a more complex format such that anything could appear before NameX for example:
Bla bla bla : 0a .bb cc NameX 01 22 aa dd 33 44 50 00 …
How could I once again get the hex digits after the name into a vector?
This is all easy and fast to do using Spirit2.1 (Boost.Spirit). Look at it, if you need help with it, ask on the boost-spirit mailing list. This is not it, but with Spirit2.1, perhaps something like: omit[(char_-("Name">>int_)) >> "Name" >> int_ >> blank] >> +(blank >> hex_) Which would fill up a vector, and you can specialize the int_parser of hex for a specific type as well, like char, then you could fill up a string. Ask on the Spirit mailing list for more info.