javascript - split without losing the separator
arrays, javascript, split
Solution
Try this. It's not a perfect solution, but it should work in most cases.
str.split(/(?=<foo>)/)
That is, split it in the position before each opening tag.
EDIT: You could also do it with `match()`, like so:
str.match(/<foo>.*?<\/bar>/g)
Problem
Possible Duplicate: JavaScript Split without losing character I have a string: ``` "<foo>abcdefg</bar><foo>abcdefg</bar><foo>abcdefg</bar><foo>abcdefg</bar>" ``` I want to separate all instances of "abcdefg" into an array like this: ``` ["<foo>abcdefg</bar>", "<foo>abcdefg</bar>", "<foo>abcdefg</bar>", "<foo>abcdefg</bar>"]; ``` I try: ``` var str="<foo>abcdefg</bar><foo>abcdefg</bar><foo>abcdefg</bar><foo>abcdefg</bar>"; var Array_Of_FooBars = str.split("</bar>"); alert(Array_Of_FooBars); ``` But it returns: ``` ["<foo>abcdefg", "<foo>abcdefg", "<foo>abcdefg", "<foo>abcdefg",] ``` It is removing the separator ''. I don't want that. How can I use split and not lose the separators from the string? Thanks. Ken