List variables in m-file

2 visualizaciones (últimos 30 días)
Etienne Coetzee
Etienne Coetzee el 24 de Abr. de 2013
I would like to rename some variables in an m-file, and would like to automate this process. I have tried using regexprep, but ran into some problems. I noticed a feature in the newest versions of Matlab, where you can automatically rename variables. Is there a command line version of this functionality. Alternatively, what would be the best way of renaming the variables, without having to run the file?
  2 comentarios
Cedric
Cedric el 25 de Abr. de 2013
Do you know the name of these variables a priori, or is it something that has to be detected by the program?
Etienne Coetzee
Etienne Coetzee el 25 de Abr. de 2013
Yes, I have the names, but some variables are for instance N and NN, so I am not sure how to prevent NN from changing when I want to change N to AB for instance. NN will then become ABAB.

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 24 de Abr. de 2013
Example of replacing a variable in a string:
S = 'x^2 + 3*x*y + x1/x';
regexprep(S, '(?<![A-Za-z0-9_])x(?![A-Za-z0-9_])', 'YO')
  3 comentarios
Etienne Coetzee
Etienne Coetzee el 25 de Abr. de 2013
Hi Walter. That is exactly what I wanted. I have tried it, and it works. Thank you. That has made my day.
Walter Roberson
Walter Roberson el 25 de Abr. de 2013
\w would likely be a good idea. I was thinking at the time that it matched a slightly different set of characters than was needed for MATLAB identifiers, but you are right that it is the same.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by