About varocarbas.com

--

About me

--

Contact me

--

Visit customsolvers.com, another side of my work

--

Valid markup

--

Valid CSS

--

© 2015-2017 Alvaro Carballo Garcia

--

URL friendly

--

Optimised for 1920x1080 - Proudly mobile unfriendly

R&D projects RSS feed

All projects in full-screen mode

PDFs:

Project 10

Project 9

Project 8

FlexibleParser code analysis:

UnitParser

NumberParser

Tools:

Chromatic encryption

(v. 1.3)

Pages in customsolvers.com:

Upcoming additions

Failed projects

Active crawling bots:

Ranking type 2

(
)

Currently active or soon to be updated:

Domain ranking

FlexibleParser (DateParser)

NO NEW PROJECTS:
Project 10 is expected to be the last formal project of varocarbas.com. I will continue using this site as my main self-promotional R&D-focused online resource, but by relying on other more adequate formats like domain ranking.
Note that the last versions of all the successfully completed projects (5 to 10) will always be available.
Completed (24 days)
Completed (57 days)
Completed (26 days)
Completed (47 days)
Completed (19 days)
Completed (14 days)

Introduction >

FlexibleParser
NumberParser code >
NumberP
Similarly to what happens with NumberO, NumberP also includes some extensions to the basic NumberX functionalities (which already allow to account for non-natively-supported scenarios like NumberP numberP = new NumberP("12345e6789");). All the code dealing with its specific functionalities is stored in Constructors_NumberP.cs and in the files inside the NumberP folder.

NumberP parses string inputs into numeric types, what explains its two additional public properties:
  • OriginalString. A string variable displaying the input being parsed.
  • Config. Its underlying ParseConfig defines the configuration of the given parsing process.
ParseConfig includes two public fields which are very descriptive of what NumberP can deliver.
  • Target. A (numeric) Type variable eventually (it might be left blank) defining the target format, as determined by the property below.
  • ParseType. The ParseTypes enum lists the special parsing conditions supported by NumberP, namely:
    • Parsing only to Target. Inputs outside the range of the associated native type trigger an error.
      For example, the input "123456" with byte as Target would be wrong. Bear in mind that the default NumberP behaviour is to pass the overflowing information to BaseTenExponent and, consequently, those inputs would output 123*10^3.
    • Strictly parsing thousands separators. The .NET native Parse/TryParse methods supporting thousands separators don't care about their positions (e.g., decimal.Parse("1,0,,00", CultureInfo.InvariantCulture) doesn't trigger any error), a curious reality which is addressed by this format.
      Additionally, NumberP supports blank spaces (100 000) and two further grouping approaches: Indian (10,00,000) and Chinese (100,0000).