Problem with a string .

Hello here is my string :
'abc "abc" '
I need to throw out single quotation mark and replace double quotation mark to single quotation mark so the output will be :
abc 'abc'
How to do it ?
Thanks a lot.

 Réponse acceptée

Jan
Jan le 17 Sep 2013

0 votes

What does "here is my string" exactly mean? Strings do not contain the surrounding quotes. They appear only, if e.g. a cell string is printed to the command window:
C = {'string'};
disp(C)
Therefore I assume this is enough:
S = 'abc "abc" ';
S = strrep(S, '"', char(39));
fprintf('%s\n', S);
I use char(39) because it looks less strange than '''', but both create exactly the same: one quote character.

2 commentaires

Jonasz
Jonasz le 17 Sep 2013
I need to delete this quotes because I use later this into function find.
find(S)
when I use it the problem is that it doesn't work as it should. The function work fine when I put this statement without quotes.
Jan
Jan le 17 Sep 2013
@Jonasz: It is not clear, if your string is:
S = 'abc "abc" '
or
S = '''abc "abc" '''
Please clarify this at first.

Connectez-vous pour commenter.

Plus de réponses (1)

Sean de Wolski
Sean de Wolski le 17 Sep 2013

1 vote

doc strrep
Here it is:
str = '''abc "abc" '''
str2 = strrep(strrep(str,'''',''),'"','''')

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Produits

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by