# Transition diagram for following token number

number -> digits(.digits)?(E[+ -]?digits)? This transition diagram runs the above mentioned token I can not understand this how this is work.what is meaning of "?"Symbol and digits. can anyone explain me this

digits(.digits)?(E[+ -]?digits)? is a regular expression for the set of strings that the pictured automaton accepts. That is, all of the strings accepted by the automaton will match this pattern. If you're unfamiliar with regular expression syntax, you can check out this explanation from Wikipedia.

In particular, if you see some pattern followed by the ? operator, it means that pattern is optional. So something like digits(.digits)? will match strings of the form digits.digits or just digits because the last (.digits) part is optional.

I would guess that digits is a placeholder for a series of numeric digits (0-9). So something like digits(.digits)? would match strings like "33.5", "0.8", "1.892", "7", etc.

• digits should be a placeholder for consecutive numeric digits (the plural form of digit). Nov 30 '18 at 7:11
• @Apass.Jack ah thanks, nice catch! Edited to fix Nov 30 '18 at 19:23