Crate contractions

Source
Expand description

contractions is a library to handle contractions So far only data sets to expand contractions are implemented.

Expands “I’m” to “I am” etc. The default data set has a replacement for all-lowercase, all-uppercase and first letter uppercase.

§Example

let contractions = contractions::Contractions::default();
assert_eq!("I am sure you would have been fine.", contractions.apply("I’m sure you’d’ve been fine."));
assert_eq!("Are you sure?", contractions.apply("R u sure?"));
let mut contractions = Contractions::new();
contractions.add_from_json(contractions::SINGLE_CONTRACTIONS_JSON);
assert_eq!("I am sad you couldn’t’ve come.", contractions.apply("I’m sad you couldn’t’ve come."));

Structs§

Contractions
Main actor in the contractions crate

Constants§

CONTRACTIONS_JSON_ORDER
The list of all json strings.
EXPAND_DOUBLE_CONTRACTIONS_JSON
Contains contractions with two apostroph in json form (eg: Who’ll’ve, Wouldn’t’ve, Mustn’t’ve)
EXPAND_DOUBLE_NO_APOSTROPHE_CONTRACTIONS_JSON
Contains most of CONTRACTIONS_DOUBLE_JSON contractions but without apostroph
EXPAND_PARTIAL_CONTRACTIONS_JSON
Contains partial contractions in json form. (eg: ’m, ’ve, n’t, ’re)
EXPAND_SINGLE_CONTRACTIONS_JSON
Contains contractions with one apostroph in json form (eg: I’m, I’ve, ’twas)
EXPAND_SINGLE_NO_APOSTROPHE_CONTRACTIONS_JSON
Contains most of CONTRACTIONS_SINGLE_JSON contractions but without apostroph
EXPAND_SLANG_JSON
Contains slang terms which will be expanded/changed to their full form
EXPAND_TRIPPLE_CONTRACTIONS_JSON
Contains contractions with three apostroph in json form (Y’all’d’ve, ’twou’dn’t)