I have a long string where I need to find all the shortest groups. Currently what is happening is I\'m getting 2 groups, one of which contains all the data in between(it could h
START[0-9]+(?:(?!\\bSTART).)*?/END TAG
You can try this.See demo.The lookahead will not allow another START in between your groups.
lookahead
START
https://regex101.com/r/cJ6zQ3/21