The solution from @pmroz is very robust, nice!
A little different approach might be to use formulas in the data table
The location of the start delimiter could be located with a "Contains" argument
Contains(:text, "(")
The location of the end delimiter could be located the same way
Contains( :text, ")" )
An obscure but really fun argument, "munger", could be used to extract the string between the delimiter locations.
In this case we want the string after the delimiter character, that ends before the ending delimiter character, so 1 is added to the start and subtracted from the end.
The function for munger in this case uses the arguments, whole text, where to start, how many characters to return. Munger can also do some other interesting things, like find and replace.
Munger( :text, :start + 1, (:stop - :start) - 1 )
Wrapping all that up into one formula would look like this
Munger(
:text,
Contains( :text, "(" ) + 1,
(Contains( :text, ")" ) - Contains( :text, "(" )) - 1
)
JMP Systems Engineer, Health and Life Sciences (Pharma)