Here is what I have included.
(([1-9]+\.[0-9]*)|([1-9]*\.[0-9]+)|([1-9]+))([eE][-+]?[0-9]+)?
To simplify the discussion, I will name the sections
( ([1-9]+ \. [0-9]* ) | ( [1-9]* \. [0-9]+ ) | ([1-9]+)) ( [eE] [-+]? [0-9]+ )? -------------------------------------------------------- ---------------------- AB
A: Meets all e / E parameters
B: corresponds to scientific notation
Destruction A we get three parts
( ([1-9]+ \. [0-9]* ) | ( [1-9]* \. [0-9]+ ) | ([1-9]+) ) ----------1---------- ---------2---------- ---3----
Part 1: allows 1 or more digits from 1 to 9, decimal, 0 or more digits after decimal (target 1)
Part 2: Allows 0 or more digits from 1 to 9, decimal, 1 or more digits after decimal (target 2)
Part 3: Allows 1 or more digits from 1 to 9 without decimal (see No. 4 in the list of goals)
Breaking B, we get 4 main parts
( [eE] [-+]? [0-9]+ )? ..--1- --2-- --3--- -4- ..
Part 1: requires the entry of upper or lower case "e" for scientific notation (for example, goals 8 and 9)
Part 2: allows an optional positive or negative sign for the exponent (e.g. goals 4, 5 and 6)
Part 3: allows 1 or more digits for the exhibitor (target 8)
Part 4: allows scientific notation to be optional as a group (goal 3)
Kelly S. French Feb 19 '10 at 2:57 2010-02-19 02:57
source share