Comparision of two strings

2 ビュー (過去 30 日間)
Jes
Jes 2015 年 7 月 14 日
コメント済み: Image Analyst 2015 年 7 月 15 日
How to compare all the characters of the following two strings. I tried with strcmp, but it doesn't take the numbers for comparision. I have to differentiate n3 and n4 in the following lines
PATH=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n4_anon_111_t88_masked_gfc','.hdr');
N4=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n3_anon_111_t88_masked_gfc','.hdr');
Any help? Thanks in Advance

回答 (2 件)

the cyclist
the cyclist 2015 年 7 月 14 日
I don't understand what you are trying to do. Did you define a value for i before you ran this code? I ran
i = 3;
PATH=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n4_anon_111_t88_masked_gfc','.hdr');
N4=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n3_anon_111_t88_masked_gfc','.hdr');
strcmp(PATH,N4)
which ran to completion with no error.
  2 件のコメント
Jes
Jes 2015 年 7 月 14 日
yes . This is my code
for i=1:457
PATH=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n4_anon_111_t88_masked_gfc','.hdr');
N4=strcat('F:\OASIS\database\OAS1_',num2str(i,'%04d'),'_MR1\PROCESSED\MPRAGE\T88_111\OAS1_',num2str(i,'%04d'),'_MR1_mpr_n3_anon_111_t88_masked_gfc','.hdr');
if strcmp(PATH~=N4)
V=hdr_read_volume(PATH);
end
end
Jes
Jes 2015 年 7 月 14 日
Thanks for your advise. I am getting warning message. May I know the reason please?
Warning: Control
Character '\O' is not
valid.

サインインしてコメントする。


Image Analyst
Image Analyst 2015 年 7 月 14 日
Try this
differentIndexes = find(PATH ~= N4);
By the way, have you ever thought about using sprintf() for a much simpler way to build strings?
  4 件のコメント
Jes
Jes 2015 年 7 月 14 日
Thanks for your help. Here my baseFileName is not constant for all folders.It varies like OAS1_0001_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr, OAS1_0002_MR1_mpr_n4_anon_111_t88_masked_gfc.hdr,etc for 457 folders
Image Analyst
Image Analyst 2015 年 7 月 15 日
Then just create the filename and search for n4 within it.
if ~isempty(fullFileName, '_n4_')
% Found the n4 file, so read it in:
V(k) = hdr_read_volume(fullFileName);
end

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeGet Started with MATLAB についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by