Result of strfind

3 vues (au cours des 30 derniers jours)
Mtlb Usr
Mtlb Usr le 7 Fév 2011
Hi,
I'm using strfind function and I want to check the result of this function. However, when strfind doesn't find the string that I indicated and the result is {[]}, instead of the position value. I have tested the result of strfind with strcmp and == or ~= but I can't control the value.
How can I know whether value of strfind is {[]}?
Regards

Réponse acceptée

Paulo Silva
Paulo Silva le 7 Fév 2011
a={[]}
isempty(a{:}) %1 if a is empty, 0 otherwise
another option
numel(a{:}) %0 if a is empty, it returns the number of elements of a
  3 commentaires
Paulo Silva
Paulo Silva le 7 Fév 2011
thanks for pointing that out
Mtlb Usr
Mtlb Usr le 7 Fév 2011
Hi Paulo,
I solved the issue, with your answer.
Thank you
regards

Connectez-vous pour commenter.

Plus de réponses (1)

Oleg Komarov
Oleg Komarov le 7 Fév 2011
I'll show an example:
% Example input
c = {'fine';'How are you'};
out = strfind(c,'fine')
out =
[1]
[]
% Return the index with exmpty cells
idxEmpty = cellfun('isempty',out)
idxEmpty =
0
1
% Positions on non empty results
posNonEmpty = find(~idxEmpty)
posNonEmpty =
1
% Extract non empty
c(~idxEmpty) % or c(posNonEmpty)
ans =
'fine'
Oleg

Catégories

En savoir plus sur Variables dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by