I am using R2018b, and trying to use the function 'validtaestring', but it doesn't find a partial match. Has anyone tried that in this version?

조회 수: 2 (최근 30일)
STR2={'AA_UCECC'};
str='UCE';
validatestring(str,STR2)
Expected input to match one of these values:
'AA_UCECC'
The input, 'UCE', did not match any of the valid values.

채택된 답변

Guy Nir
Guy Nir 2018년 11월 20일
Seems like validatestring only searches first n characters. Therefore I am using strfind.
Thank you,
GUy
  댓글 수: 2
Image Analyst
Image Analyst 2018년 11월 20일
strfind returns an index or an empty null string.
You might want to use contains() like I did in my answer, unless you really need to know the index where the substring starts. If you have just one item, like you did, then you can also use strcmp() or ismember().

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

추가 답변 (1개)

Image Analyst
Image Analyst 2018년 11월 20일
To find partial matches, don't use validatestring(). Use contains
validString = contains(str, STR2);

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

제품


릴리스

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by