Mac use strsplit happen question(Matlab 2020b)

2 vues (au cours des 30 derniers jours)
树果
树果 le 17 Jan 2024
Déplacé(e) : Dyuman Joshi le 17 Jan 2024
code:
if( ~isempty( regexp(tline,'Atom .*has atomic number .*and mass ', 'once') ) )
str = strsplit( strtrim(tline), ' ')
end
input:' Atom 1 has atomic number 6 and mass 12.00000'
output:
1×9 cell array
Columns 1 through 5
{'Atom'} {'1tom'} {'hasm'} {'atomic'} {'number'}
Columns 6 through 9
{'6umber'} {'andber'} {'masser'} {'12.00000'}
The output is wrong!
  3 commentaires
Dyuman Joshi
Dyuman Joshi le 17 Jan 2024
Modifié(e) : Dyuman Joshi le 17 Jan 2024
@Walter OP is using R2020b.
This is output when I ran the same code in my R2021a -
>> tline = ' Atom 1 has atomic number 6 and mass 12.00000';
if( ~isempty( regexp(tline,'Atom .*has atomic number .*and mass ', 'once') ) )
str = strsplit( strtrim(tline), ' ')
end
str =
1×9 cell array
{'Atom'} {'1'} {'has'} {'atomic'} {'number'} {'6'} {'and'} {'mass'} {'12.00000'}
Walter Roberson
Walter Roberson le 17 Jan 2024
I just installed R2020b and tested with the above code on an Intel Mac OS Sonoma. Output was as expected
str =
1×9 cell array
{'Atom'} {'1'} {'has'} {'atomic'} {'number'} {'6'} {'and'} {'mass'} {'12.00000'}

Connectez-vous pour commenter.

Réponse acceptée

树果
树果 le 17 Jan 2024
Déplacé(e) : Dyuman Joshi le 17 Jan 2024
Thank you all!I have script name ‘strsplit.m’ the same as the function 'strsplit'. I made a mistake!
  1 commentaire
Dyuman Joshi
Dyuman Joshi le 17 Jan 2024
Déplacé(e) : Dyuman Joshi le 17 Jan 2024
Ah, that should be it.
Now, this should be a reminder to not name variables or scripts as the same as functions in MATLAB.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Produits


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by