You can do this in one go with re.split :
In [10]: import re In [11]: line = 'DATA(VALUE1|VALUE2||VALUE4)' In [12]: re.split(r'[(|)]', line) Out[12]: ['DATA', 'VALUE1', 'VALUE2', '', 'VALUE4', '']
And extract the data and values โโas follows:
In [13]: parts = re.split(r'[(|)]', line) In [14]: data = parts[0] In [15]: values = parts[1:-1] In [16]: values Out[16]: ['VALUE1', 'VALUE2', '', 'VALUE4']
source share