Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: split on the pattern of '),('

by kennethk (Abbot)
on Jun 07, 2012 at 19:47 UTC ( #975026=note: print w/ replies, xml ) Need Help??

in reply to split on the pattern of '),('

If you need to escape characters in a regular expression, you can reliably use either the quotemeta function or the delimiters \Q and \E, as described in Quote and Quote like Operators. For example, you would successfully split with my @arr = split /\Q),(\E/, $str;.

On examining your input, it's possible you'll get more mileage from either a state machine character-wise parser, a regular expression, or my favorite in this context, multiple operations including a different basic split. Since you appear to be separating tuples, you could use my @arr = split /(?<=\))\s*,\s*(?=\()/, $str; to separate the tuples, and then deal with each one individually.

#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.

Comment on Re: split on the pattern of '),('
Select or Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (8)
As of 2016-05-30 21:03 GMT
Find Nodes?
    Voting Booth?