Find the cell which is containing a string

3 views (last 30 days)
hi guys, i have the below array:
A={'Dimension','Weight','Qty','Thk','Total Price'};
now I want to find out which cell (Row and Col number) has the string 'Price' in it, and the answer is row=1, col=5.
i dont know how to find that cell when i have only a part of the whole string in a cell,
please help me what to do, thnx a lot

Accepted Answer

Stephan
Stephan on 16 Nov 2020
A={'Dimension','Weight','Qty','Thk','Total Price'};
[r,c] = find(contains(A,'Price'))

More Answers (2)

Ameer Hamza
Ameer Hamza on 16 Nov 2020
Another solution using regexpi() which takes care of the letter-case too.
[r, c] = find(~cellfun(@isempty, regexpi(A, 'price')))
  3 Comments
Ameer Hamza
Ameer Hamza on 17 Nov 2020
Edited: Ameer Hamza on 17 Nov 2020
Yes, I meant that it works for all cases, wether you use 'price', 'Price', 'pRiCe'. regexpi() does not care about the case.

Sign in to comment.


Setsuna Yuuki.
Setsuna Yuuki. on 16 Nov 2020
A={'Dimension','Weight','Qty','Thk','Total Price'};
b = strfind(A,'Price')
for n=1:length(b)
if (~isnan(b{n}))
break;
end
end
fprintf("row 1, column %i \n",n)
  1 Comment
abb Shp
abb Shp on 17 Nov 2020
thnx Bastian, this works too but wants a more general code

Sign in to comment.

Categories

Find more on Characters and Strings 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!