2013-01-07 53 views
0

我是一個新的MATLAB用戶,使用strrep一個字符串我可以刪除存儲在一個變量字符串,並用它來刪除?例如如何使用strrep刪除存儲在變量中的字符串?

C = textread('input.txt', '%s', 'delimiter', '\n'); 
expr = '[^\n]*.Data [^\n]*'; 
fileread_info = regexp(filetext, expr, 'match') 
for id=i:length(fileread_info) 
C = strrep(C, 'fileread_info{i}', ''); 
end 

但這刪除文件input.txt的字EXPR。如何刪除變量expr中包含的字符串?謝謝!

+3

您不應該在fileread_info {i}處引用引號。你也應該檢查出regexprep。 – Navan

回答

0

由於@Navan已經建議:

  1. 您可以使用regexprep

    C = regexprep(C, expr, ''); % will do the regular expression search + replace in one commnad

  2. 你應該解除引用'fileread_info{i}'

    C = strrep(C, fileread_info{i}, '');

+0

這只是刪除存儲在expr中的表達式,我如何刪除存儲在expr中的表達式的整個字符串?ex如果expr ='[^ \ n] * .Data [^ \ n] *';我如何刪除整個字符串'hello.this = this.data'而不是僅僅刪除.data? – learningMatlab

+0

@learningMatlab它似乎爲我工作。您可能想嘗試'expr ='[^ \ n] * \。Data [^ \ n] * \ n'' – Shai

相關問題