Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re^6: processing file content as string vs array

by haukex (Bishop)
on May 21, 2019 at 16:04 UTC ( #11100327=note: print w/replies, xml ) Need Help??


in reply to Re^5: processing file content as string vs array
in thread processing file content as string vs array

Of course TMTOWTDI. I just don't see the advantage of this code over just inlining the sub construct_record code directly in the while loop. Plus, you've increased the number of global variables you're using. There are a couple other things I could nitpick, like that you've got five different regexes all checking for the string START.

This format has some of the nastiest things to deal with. They normally do not occur all at once!

I disagree - I don't find this format nasty and there are plenty of data formats this complicated. Which was exactly my point - a state machine type approach can handle them all. Anyway, as I said, as long as it works you're free to write code like this - I personally still disagree with it ;-)

Replies are listed 'Best First'.
Re^7: processing file content as string vs array
by Marshall (Canon) on May 21, 2019 at 16:26 UTC
    I don't want to get into a big argument. My purpose was to show TMTOWTDI.
    I do not claim that the approach I demo'ed works best for all cases.
    I think knowledge of multiple ways to implement this result is a good idea.
    I do agree that a state machine approach can handle much more complicated formats than in this example.
    Most of the formats I deal with are less complex (thank goodness!) and do not require a state_machine approach.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11100327]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (5)
As of 2020-11-26 13:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?