Skip to main content

Installation

pip3 install text2digits

Usage

Python 3 only!

from text2digits import text2digits
t2d = text2digits.Text2Digits()
t2d.convert("twenty ten and twenty one")
> 2010 and 21

It can handle a variety of phrases. Spoken/Informal and formal language:

"A random string" -> 'A random string'
"I am thirty six years old with a child that is four. I would like to get him four cars!" -> 'I am 36 years old with a child that is 4. I would like to get him 4 cars!'
"I was born in twenty ten" -> 'I was born in 2010'
"I was born in nineteen sixty four" -> 'I was born in 1964'
"I am the fourth cousin" -> 'I am the 4 cousin'
"I am twenty nine" -> 'I am 29'
"it was twenty ten and was negative thirty seven degrees" -> 'it was 2010 and was negative 37 degrees'
"thirty twenty one" -> '3021'
"one thousand six hundred sixty six" -> '1666'
"one thousand and six hundred and sixty six" -> '1666'
"sixteen sixty six" -> '1666'
"eleven hundred twelve" -> '1112'
"Sixteen and seven" -> '16 and 7'
"twenty ten and twenty one" -> '2010 and 21'
"I was born in nineteen ninety two and am twenty six years old!" -> 'I was born in 1992 and am 26 years old!'
"three forty five" -> '345'

I find this useful if using Alexa/Lex to convert audio to text and have to convert the text to digits.

Known Limitations

  • Negative numbers: the word "negative" is preserved as-is rather than being converted to a unary minus (e.g. "negative five""negative 5", not "-5").
  • Ordinal-to-digit conversion is lossy by default: ordinal suffixes are dropped unless add_ordinal_ending=True is passed (e.g. "third""3", not "3rd").

What Is Supported

  • Decimal literals adjacent to scale words: "2.5 thousand""2500", "1.2345 hundred""123.45"
  • Indian number system scales: lakh, crore, arab, kharab
  • Ordinals: first, second, …, twentieth, hundredth, thousandth, …
  • Spelling correction via similarity_threshold parameter
  • Year-style concatenation: "twenty ten""2010"

Acknowledgements

I have heavily used code from the SO answers from here: https://stackoverflow.com/questions/493174/is-there-a-way-to-convert-number-words-to-integers and improved upon them

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

text2digits-0.1.2.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

text2digits-0.1.2-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

Details for the file text2digits-0.1.2.tar.gz.

File metadata

  • Download URL: text2digits-0.1.2.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for text2digits-0.1.2.tar.gz
Algorithm Hash digest
SHA256 02053020819cbb30248f3d71a3eb27459f4907d2300c220235bf0fe0749a7ab0
MD5 1380cc157d929f0ab2e746614e7b5a31
BLAKE2b-256 5d418a321db651235ca63795b6c9f9b08f4ff60592779d1e75a29933e7a6b5c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for text2digits-0.1.2.tar.gz:

Publisher: publish.yml on ShailChoksi/text2digits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file text2digits-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: text2digits-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 25.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for text2digits-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 49a7d615777d37dec3eef66bd7f23deef55315029bbe71dfb5b4bc3d1d1d6e3c
MD5 254b0dd096d99ae03ff80f2b7285753f
BLAKE2b-256 b1e84abe384d43a4b8d558c79cd32e833afee10a5402799d940b58eb68eead49

See more details on using hashes here.

Provenance

The following attestation bundles were made for text2digits-0.1.2-py3-none-any.whl:

Publisher: publish.yml on ShailChoksi/text2digits

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 files

0.1.0

2 files

0.0.9

2 files

0.0.8

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

3 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page