How to remove a pattern in a table column

5 vues (au cours des 30 derniers jours)
JFz
JFz le 4 Oct 2016
Commenté : JFz le 4 Oct 2016
Hi,
I have a table with a column. The column looks like this: 'AB_Off' 'ABC' 'CDE_Off'
I would like to remove the '_Off' from every cell in that column. I tried TF = endsWith, and match, but I always get error. "Error using string string is obsolete and will be discontinued. Use char instead." I don't know how to resolve this. Would you please help? Thanks,
Jennifer

Réponse acceptée

Jan Orwat
Jan Orwat le 4 Oct 2016
Modifié(e) : Jan Orwat le 4 Oct 2016
assuming T - your table, and n - number of column containing these strings you can do as follows:
T{:, n} = regexprep(T{:, n}, '_Off$', '');
or
T{:, n} = erase(T{:, n}, '_Off');
but second option doesn't detect if it's on the end of a string

Plus de réponses (2)

Hamid Ebrahimi Orimi
Hamid Ebrahimi Orimi le 4 Oct 2016
you mean you have a cell which has 'ABC_Off' string in each element? If I understood correctly, the answer is as follow: A={'ABC_Off', 'ABC_Off','ABC_Off'} for i=1:length(A) if A{i}=='ABC_Off' A{i}='ABC'; end end A is your defined cell.

elias GR
elias GR le 4 Oct 2016
Modifié(e) : elias GR le 4 Oct 2016
strfind function is what you need ( https://www.mathworks.com/help/matlab/ref/strfind.html ). I suppose that you have a cell array of string. Then a simple general solution to remove the _Off from the end of the strings (we suppose that _Off only occurs at the end) is:
str={'AB_Off','ABC','CDE_Off'};
for i=1:length(str)
ind=strfind(str{i},'_Off');
if ~isempty(ind)
str{i}=str{i}(1:ind-1);
end
end
  1 commentaire
JFz
JFz le 4 Oct 2016
Thanks a lot.
What I have is a column in a Matlab table. the 'AB_Off', 'ABC', 'CDE_Off' are on different rows in that same column. Is there a way to make all the '_Off' in that column go away? Thanks,
Jennifer

Connectez-vous pour commenter.

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by