Matching substrings with regexp
Show older comments
I'm trying to identify the subexpressions of a formula such as (real cases much longer):
y = ((a + b) * (c / d) + ( e + f ))
The subexpressions are always separated by pairs of parenthesis as in the example above. It seems like I should be able to use a regular expression with a rule like (intuitively) match "an initial left parenthesis, any characters (but no parenthesis), and a terminating right parenthesis" to get:
(a + b) (c / d) (e + f)
Can anybody suggest a regular expression to do this? Or any way other than a regular expression?
Accepted Answer
More Answers (1)
per isakson
on 11 Sep 2014
1 vote
AFAIK: That is not possible with Matlab's regular expression. Recursion is needed. With Perl (and other languages it is possible). See http://perl.plover.com/yak/regex/samples/slide083.html
Categories
Find more on String Parsing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!