Replace "-" with "E-" in output file

1 view (last 30 days)
Etienne on 14 Feb 2017
Commented: Etienne on 14 Feb 2017
Hi All
I have an output file that printed some numbers incorrectly, for instance, 1.7865271465-119 should be 1.7865271465E-119. I do not have control with regards to the output format. My question is how can I replace the "-" with "E-"? I have tried regexprep but it replaces the two numbers each side of the minus sign as well. Any help will be appreciated.
  1 Comment
Adam on 14 Feb 2017
Can't you just do it in a standard text editor with a find & replace?

Sign in to comment.

Accepted Answer

per isakson
per isakson on 14 Feb 2017
Edited: per isakson on 14 Feb 2017
This does it
>> regexprep( '1.7865271465-119', '([\d\.]+)\-(\d+)', '$1E-$2' )
ans =
But it doesn't work with '1.7865271465+119'. This works with plus or minus
>> regexprep( '1.7865271465+119', '([\d\.]+)([\-\+])(\d+)', '$1E$2$3' )
ans =
  1 Comment
Etienne on 14 Feb 2017
Brilliant, thank you!

Sign in to comment.

More Answers (0)


Find more on Environment and Settings in Help Center and File Exchange


Community Treasure Hunt

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

Start Hunting!

Translated by