Comparing terms in a character array

Hey,
I have character array with terms solve= (B*C) + (A*~C), I am comparing terms from table to determine if it exist exact in the character array. I tried.
if strcmp(solve,'A*C')
do nothing
else
" I would to add the term ('A*C') from the if statement into solve"
end
Can anyone assist me in matching if the exact term exist in the array & if not I would to add it to the existing character array.
Thanks.

2 Comments

What is solve? Is it a string?
Solve the character array

Sign in to comment.

 Accepted Answer

If it is truly a "character array" and you want exact matches only, you can use the findstr() command, which will return empty if not found
expr = '(B*C) + (A*~C)'
newterm = '(A*C)'
if isempty(findstr(expr,newterm))
expr = [expr ' + ' newterm]
end
If your expression is a string as KSSV was asking, you can do
expr = "(B*C) + (A*~C)"
newterm = '(A*C)'
if ~expr.contains(newterm)
expr = expr + " + " + newterm
end

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!