Note your example input is not valid matlab syntax. I assume the internal ' are meant to be doubled.
I'm not too sure what you're trying to do with your regex, some of it is overcomplicated, e.g.:
regexp(s, '.*(somexepr).*', 'tokens')
is the same as the simpler (and most likely much faster, .* can slow regexp tremendously if used carelessly)
regexp(s, 'somexpr', 'match')
I'm not entirely clear on what exactly you want to include in your match. I don't think you understand fully how  works in a regexp, and in particular the role of - in there. Your [\(\)-_a-zA-Z0-1]+ expression matches one or more of:
- a (, your \(,
- any character in the range '(':'_', your \)-_, note that this range does include the comma. It's probably where you went wrong.
- any character in the range 'a':'z',
- any character in the range 'A':'Z',
- 0, or 1, which you have written as 0-1 but could be written more simply as 01