Reputation: 421
I know how to split using, multiple separators but I have no idea how to split a string into an array between two characters. So:
var myArray = "(text1)(text2)(text3)".split(???)
//=> myArray[0] = "text1", myArray[1] = "text2", myArray[2] = "text3"
What should I enter in the "???"? Or is there a different approach I should use?
Making ")(" a separator won't work as I want to split the array with a variety of separators such as ">" making it very unpractical to list every possible combination of separators
Upvotes: 11
Views: 16112
Reputation: 44259
Using split between specific characters without losing any characters is not possible with JavaScript, because you would need a lookbehind for that (which is not supported).
But since you seem to want the texts inside the parentheses, instead of splitting you could just match
the longest-possible string not containing parentheses:
myArray = "(text1)(text2)(text3)".match(/[^()]+/g)
Upvotes: 2