if a string contains any of the strings from an array

조회 수: 16 (최근 30일)
Vosvi
Vosvi 2018년 8월 21일
답변: Kojiro Saito 2018년 8월 21일
I have a str variable below which holds the subject name in the form of "S01_output.xlsx" where '01' part can be any number.
filename='S02_output.xlsx';
substring={'02', '04', '07'};
In an if statement, I need to check if filename contains certain numbers which are found in the array called substring. I tried ismember(filename, substring) but I guess it only works when there is exact match.

채택된 답변

Kojiro Saito
Kojiro Saito 2018년 8월 21일
Assuming you're using R2014b, how about the following way with strncmpi ?
filename='S02_output.xlsx';
substring={'02', '04', '07'};
substring2=strcat('S', substring);
tf = strncmpi(filename, substring2, 3)
From R2016b, we can use contains function and it's easier.
filename='S02_output.xlsx';
substring={'02', '04', '07'};
tf = contains(filename, substring)

추가 답변 (0개)

카테고리

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

제품


릴리스

R2014b

Community Treasure Hunt

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

Start Hunting!

Translated by