|P is for Practical|
Re^4: List::MoreUtils before, after and ... between? (1 regex)by tye (Sage)
|on Feb 22, 2012 at 16:04 UTC||Need Help??|
I thought that was obvious enough to enough readers and far enough "beside the point" that I needn't belabor it. (:
I expect a reported stack trace to be highly likely to already prevent the inclusion of literal control characters and so find "\0" to be a completely reasonable choice.
MIME has a mechanism for choosing a delimiter that I particularly like. Pick a starting delimiter however you like. Do index on the body of text that must not contain the delimiter. If a match is found, then look at the character after the match and pick a character that isn't that and append it to your delimiter. Perform an index from that point. Repeat until no match.
Most of the time, your original delimiter is just fine. Rarely, you have to append a single character to it. In the worst possible case, you only traverse the body of text a single time and always come up with a functional delimiter.
You could probably use that on "@list" to pick your delimiter if you are careful about a couple of edge cases (picking "aba" as your delimiter because it appears nowhere in "@list" but other-than-the-last-item ending in "ab" would still be a problem).
But in practice, in Perl at least, I'm more likely to just escape embedded delimiters if such were required.