How to find a substring within a miscellaneous cell array?

조회 수: 4 (최근 30일)
Ed Mendes
Ed Mendes 2020년 3월 7일
댓글: Ed Mendes 2020년 3월 7일
Hello
I need to search for a specifig substring within a cell array of different types. Below it is an example.
>> impact_factor(3,:)
ans =
1×8 cell array
Columns 1 through 5
{'Rank'} {'FullJournalTitle'} {'Total Cites'} {[NaN]} {'Journal Impact …'}
Columns 6 through 8
{'Eigenfactor Score'} {[NaN]} {[NaN]}
if I use the full string, the solution could be something like
find(strcmp('FullJournalTitle',impact_factor(3,:)))
However if I try to search for substring such as 'Full' and using either strfind or contains, an error comes out.
Many thanks
Ed

채택된 답변

dpb
dpb 2020년 3월 7일
Alternatively, string can convert numerics...
>> contains(string(C),"Full")
ans =
1×8 logical array
0 1 0 0 0 0 0 0
>>
  댓글 수: 3
dpb
dpb 2020년 3월 7일
Is a handy feature albeit at the cost of introducing yet another cast. The penchant for the other string functions to return empty or to not be able to handle non-string inputs has always made such lookups a real hassle to work around. Is highly prevalent situation in reading data from spreadsheets and the like that seems, unfortunately, more and more ubiquitous to have to deal with...
Ed Mendes
Ed Mendes 2020년 3월 7일
It seems that we will have to deal with it case by case. I am always worried when matlab needs to read data from spreadsheets. Thank you ever so much for your help.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Spreadsheets에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by