How to get the row indices

2 views (last 30 days)
Hi,
I have the below array, and I want to get the idices of names starting with PRS.
PRS.BG02K65E5T9
PRS.UG02K145E5T20
Ark.prgrma
YUI_PRS.UG02K145E5T20
PRS.GG02K200E6T20
1. I want to know which row of name start with PRS. (row1,2,5) 2. Count of names starting with PRS. and not start with PRS. (3 &2)
Many thanks in advance,
  2 Comments
Steven Lord
Steven Lord on 13 Apr 2017
How is the data stored? As a char array, as a cell array each element of which is a char vector, as a string array, etc.? And which release of MATLAB are you using?

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 13 Apr 2017
Edited: Walter Roberson on 13 Apr 2017
S = { 'PRS.BG02K65E5T9',
'PRS.UG02K145E5T20',
'Ark.prgrma',
'YUI_PRS.UG02K145E5T20',
'PRS.GG02K200E6T20'};
find(strncmp(S,'PRS',3))
  2 Comments
Kanakaiah Jakkula
Kanakaiah Jakkula on 13 Apr 2017
I also want to know the count of of names starting with PRS and not starting with PRS: my output should be [3 2]
Walter Roberson
Walter Roberson on 14 Apr 2017
mask = strncmp(S,'PRS',3);
row_indices = find(mask);
match_count = sum(mask);
nonmatch_count = sum(~mask);

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!