MATLAB Answers

Etienne
0

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

Asked by Etienne
on 14 Feb 2017
Latest activity Commented on by 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.
Regards
Etienne

  1 Comment

Can't you just do it in a standard text editor with a find & replace?

Sign in to comment.

Tags

1 Answer

Answer by per isakson
on 14 Feb 2017
Edited by per isakson
on 14 Feb 2017
 Accepted Answer

This does it
>> regexprep( '1.7865271465-119', '([\d\.]+)\-(\d+)', '$1E-$2' )
ans =
1.7865271465E-119
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.7865271465E+119

  1 Comment

Brilliant, thank you!

Sign in to comment.