how to solve this error

1 visualización (últimos 30 días)
Mohamuud hassan
Mohamuud hassan el 18 de Mayo de 2015
Comentada: Walter Roberson el 18 de Mayo de 2015
hello all, i have this error with this code
Undefined function 'eq' for input arguments of type 'cell'.
Error in e_extructing (line 107)
if(Ex_domain(loop7_out)=='hotmail.com')
Ex_domain =regexp(k2, '(?<=@).+$', 'match' )
for loop7_out=1:length(Ex_domain)
if(Ex_domain(loop7_out)=='hotmail.com')
Ex_Z(loop7_out)=0
elseif(Ex_domain{loop7_out}=='gmail.com')
Ex_Z(loop7_out)=1
elseif(Ex_domain{loop7_out}=='yahoo.com')
Ex_Z(loop7_out)=2
elseif(Ex_domain{loop7_out}=='mail.com')
Ex_Z(loop7_out)=3
elseif(Ex_domain{loop7_out}=='live.com')
Ex_Z(loop7_out)=4
elseif(Ex_domain{loop7_out}=='msn.com')
Ex_Z(loop7_out)=5
elseif(Ex_domain{loop7_out}=='myspace.com')
Ex_Z(loop7_out)=6
elseif(Ex_domain{loop7_out}=='mynet.com')
Ex_Z(loop7_out)=7
end
end

Respuesta aceptada

Chad Greene
Chad Greene el 18 de Mayo de 2015
Unfortunately, you can't use == when comparing strings. Replace
Ex_domain(loop7_out)=='hotmail.com'
and all the similar logical checks with
strcmpi(Ex_domain(loop7_out),'hotmail.com')
  2 comentarios
Chad Greene
Chad Greene el 18 de Mayo de 2015
Better yet, skip the ifs and elseifs:
Ex_domain = {'msn.com','msn.com','yahoo.com'};
domains = {'hotmail.com','gmail.com','yahoo.com','mail.com','live.com','msn.com','myspace.com','mynet.com'};
Ex_Z = NaN(size(Ex_domain));
for k = 1:length(Ex_domain)
Ex_Z(k) = find(strcmpi(domains,Ex_domain(k)))-1;
end
Walter Roberson
Walter Roberson el 18 de Mayo de 2015
That will happen to work, but better would be
strcmpi(Ex_domain{loop7_out},'hotmail.com')

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Mathematics en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by