How to evaluate a string of numbers in the same command of AWK

Hi,
I am trying to do evaluate one numerical string after substitution.
++++++++++++++++==
What I have = "7.04+2.3Xlog(0.72e-6X1.0e6)X1.9596"
What I need = evaluate 7.04+2.3*log(0.72e-6*1.0e6)*1.9596 = 5.55941
what I am doing;

echo "7.04+2.3Xlog(0.72e-6X1.0e6)X1.9596" | awk '{kk=gensub(/X/,"*","g"); ak=(kk); {print ak};exit}'

here intention is to replace all "X" with "*" and then evaluate the string of numbers and print the evaluated value which I am unable to achieve. Please help

regds
A new member of the Forum(Vivek)

$ echo "7.04+2.3Xlog(0.72e-6X1.0e6)X1.9596" | sed -e 'y/Xe/\*\^/' -e 's/log/l/g' | bc -l
15.92356466100994563050

"bc" requires -l for logarithm and the function name is "l"
Exponents are represented by "^"

--ahamed

Hi Ahamed,
Thanks a lot, it is working and out of awk complications.
Only thing is which I need to take care is the bc -l is calculating on natural log but I need to use log of base 10.
Thanks a lot for your help
regds
vivek sharma