Find the cell which is containing a string

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

 Akzeptierte Antwort

Stephan
Stephan am 16 Nov. 2020

1 Stimme

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

Weitere Antworten (2)

Ameer Hamza
Ameer Hamza am 16 Nov. 2020

1 Stimme

Another solution using regexpi() which takes care of the letter-case too.
[r, c] = find(~cellfun(@isempty, regexpi(A, 'price')))

3 Kommentare

abb Shp
abb Shp am 17 Nov. 2020
Thanks Ameer, this works too, but letter-case is not important to me in this case, thnx anyway.
Ameer Hamza
Ameer Hamza am 17 Nov. 2020
Bearbeitet: Ameer Hamza am 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.
abb Shp
abb Shp am 17 Nov. 2020
Thanks :)

Melden Sie sich an, um zu kommentieren.

Setsuna Yuuki.
Setsuna Yuuki. am 16 Nov. 2020

0 Stimmen

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 Kommentar

abb Shp
abb Shp am 17 Nov. 2020
thnx Bastian, this works too but wants a more general code

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Characters and Strings finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 16 Nov. 2020

Kommentiert:

am 17 Nov. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by