Skip to content

albertodall/Numsense

 
 

Repository files navigation

Numsense

A .NET library for parsing natural-language numerals ("forty-two") to integers, and converting the other way as well. While written in F#, it can be used from both F# and C#:

F#:

> let englishNumeral = Numeral.toEnglish 42;;
val englishNumeral : string = "forty-two"

> let i = Numeral.tryParseEnglish "one-thousand-three-hundred-thirty-seven";;
val i : int option = Some 1337

C#:

var englishNumeral = Numeral.English.ToNumeral(42);
// englishNumeral is "forty-two"

int i;
var success = Numeral.English.TryParse(
    "one-thousand-three-hundred-thirty-seven",
    out i);
// success is true, and i is 1337

Languages

Other languages than English are supported as well:

> let danishNumeral = Numeral.toDanish 9;;
val danishNumeral : string = "ni"

If you don't see your favourite language, please consider submitting a pull request.

NuGet

Numsense is available via NuGet: Numsense.

Versioning

Numsense follows Semantic Versioning 2.0.0.

About

A .NET library for parsing natural-language numerals ("forty-two") to integers, and converting the other way as well

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • F# 95.7%
  • C# 4.2%
  • Other 0.1%