# [CentOS] Conversion of text in shell

Ross S. W. Walker rwalker at medallion.com
Fri Oct 12 21:57:54 UTC 2007

roland hellström wrote:
>
> Indeed this is a chalmers student. The purpose of asking
> though is to learn it, because I find it very hard to learn
> without seeing an example of it.
> Thx for the reply it seemed to work well :) Although it would
> be interesting to see if this could be done with the sed
> command somehow?
>

Given a text file with this data:
1.1,3.19e-4
1.2,3.05e-3
10.5,9.14e-8 <- I'm guessing this was suppose to be scientific not

Convert to a text file:
1,1 & $3,19 \cdot 10^{-4}$\\
1,2 & $3,05 \cdot 10^{-3}$\\
10,5 & $9,14 \cdot 10^{-8}$\\

Look for the pattern match ups:
1.1,3.19e-4
1,1 & $3,19 \cdot 10^{-4}$\\

1.2,3.05e-3
1,2 & $3,05 \cdot 10^{-3}$\\

10.5,9.14e-8
10,5 & $9,14 \cdot 10^{-8}$\\

It looks like:
1) decimals converted to commas
2) commas converted to " & "
3) "e" converted to " \cdot 10^{<>}\$\\"
4) <> substituted for whatever comes after the "e"

Now if you convert decimals to commas BEFORE you convert
commas to " & " then you will have garbage, so you need
to convert commas to " & " first, then decimals to
commas, then apply the conversion w/ substituion.

Substitution is handled with the  operator like such:

echo "this is a test" | sed -e 's/$$.*$$ is a $$.*$$/\2 is NOT a \1/'

Will output: "test is NOT a this"

Can be done in 3 steps, sed can take multiple operations
if you separate them with ;

PS Fix your mail client to post in plain text and put
the top.

______________________________________________________________________
This e-mail, and any attachments thereto, is intended only for use by
the addressee(s) named herein and may contain legally privileged
and/or confidential information. If you are not the intended recipient
of this e-mail, you are hereby notified that any dissemination,
distribution or copying of this e-mail, and any attachments thereto,
is strictly prohibited. If you have received this e-mail in error,
please immediately notify the sender and permanently delete the
original and any copy or printout thereof.