Problems? Is your data what you think it is? | |
PerlMonks |
Re^3: Epoch based parserby kcott (Archbishop) |
on Aug 14, 2013 at 06:48 UTC ( [id://1049388]=note: print w/replies, xml ) | Need Help?? |
"When I try to decode_json the entire file, it doesnt allow, as I believe decode_json looks for the braces to see if it finished. How can I parse multiline json from a file?" With the sample input you posted, you can just read records as being delimited with "}\n" by setting the input record separator: $/ (see perlvar: Variables related to filehandles). You can then remove the embedded "\n" and "\n+" strings with s/\n[+]?//gm (see perlre if you're unfamiliar with that). Here's a modification of my original code that does this. [Note: you haven't supplied data that matches your original 12:15 or subsequent any:20 — I've made an additional change in order to get some output.]
Output:
"The file input would be something like: ..." I doubt it! That looks like you've just pasted it from the web page including the leading '+'s indicating text wrapping at 70 characters. Assuming that's right, you only need "s/\n//gm" for the regex. -- Ken
In Section
Seekers of Perl Wisdom
|
|