## Simple if statement question

on 19 Jun 2013

### the cyclist (view profile)

Hi, just getting the hang of the basics of MATLAB and had a quick easy question. I have a variable defined as a string and I want to use an if statement on two parts of the string seperately.

EX.

Astr = '123456789'

if Astr(2:4,5:7) == '234','567'

```    x = 5
end```

Of course I am hoping x = 5 would appear when I run this, but it gets an error on the 'if' line. Let me know how to accomplish this!

## Products

No products are associated with this question.

### the cyclist (view profile)

on 19 Jun 2013
Edited by the cyclist

### the cyclist (view profile)

on 19 Jun 2013

You are pretty much inventing your own syntax here, and MATLAB won't understand that. :-)

One way to perform this test is

```Astr = '123456789'
if strcmp(Astr(2:4),'234') && strcmp(Astr(5:7),'567')
x = 5;
end
```

The string comparison command that I used here is better than using "==" (which is more appropriate for numeric comparisons).

lvn

### lvn (view profile)

on 19 Jun 2013

Or shorter, use strcmp(Astr([2:4,5:7]), '234567' )

### JP (view profile)

on 19 Jun 2013

Thanks very much! Yes I figured I was inventing a few things when doing that haha

#### Join the 15-year community celebration.

Play games and win prizes!

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi