10
10
# Replacement regular expressions - to be used only in `re.sub`
11
11
def _repl_single_digit (m ):
12
12
m1 = m .group (1 )
13
- m2 = consts .DIRECT_SINGLE_NUMS [m .group (2 )]
13
+ m2 = consts .DIRECT_SINGLE_NUMS [m .group (2 ). lower () ]
14
14
return f'{ m1 } <num>{ m2 } '
15
15
16
16
17
17
def _repl_ten_prefixes (m ):
18
18
m1 = m .group (1 )
19
- m2 = consts .TEN_PREFIXES [m .group (2 )]
20
- m3 = consts .SINGLE_NUMS [m .group (3 )]
19
+ m2 = consts .TEN_PREFIXES [m .group (2 ). lower () ]
20
+ m3 = consts .SINGLE_NUMS [m .group (3 ). lower () ]
21
21
return f'{ m1 } <num>{ m2 + m3 } '
22
22
23
23
24
24
def _repl_ten_prefs_single_ords (m ):
25
25
m2 , m4 = m .group (2 ), m .group (4 )
26
26
repl = f'{ m .group (1 )} <num>' \
27
- + str (consts .TEN_PREFIXES [m2 ] + consts .ORDINAL_SINGLE [m4 ]) \
27
+ + str (consts .TEN_PREFIXES [m2 . lower () ] + consts .ORDINAL_SINGLE [m4 . lower () ]) \
28
28
+ m4 [- 2 :]
29
29
return repl
30
30
31
31
32
32
def _repl_ten_prefs (m ):
33
- return f'{ m .group (1 )} <num>' + str (consts .TEN_PREFIXES [m .group (2 )])
33
+ return f'{ m .group (1 )} <num>' + str (consts .TEN_PREFIXES [m .group (2 ). lower () ])
34
34
35
35
36
36
def _repl_all_fractions (m ):
37
- return f'<num>{ m .group (1 )} ' + str (consts .ALL_FRACTIONS [m .group (1 )])
37
+ return f'<num>{ m .group (1 )} ' + str (consts .ALL_FRACTIONS [m .group (1 ). lower () ])
38
38
39
39
40
40
# Public
@@ -151,11 +151,12 @@ def numerize_fractions(s, ignore=None, bias=None):
151
151
if not (m and m2 ):
152
152
m = None
153
153
if m is not None :
154
- s = re .sub (pat , lambda m : '/' + str (consts .ALL_FRACTIONS [m .group (2 )]), s , count = 1 )
154
+ s = re .sub (pat , lambda m : '/' + str (consts .ALL_FRACTIONS [m .group (2 ).lower ()]),
155
+ s , count = 1 )
155
156
pat = re .compile (r'(^|\W)({})(?=$|\W)' .format (quarters ), flags = re .IGNORECASE )
156
157
m = re .search (pat , s )
157
158
if m is not None :
158
- s = re .sub (pat , lambda m : '/' + str (consts .ALL_FRACTIONS [m .group (2 )]), s , count = 1 )
159
+ s = re .sub (pat , lambda m : '/' + str (consts .ALL_FRACTIONS [m .group (2 ). lower () ]), s , count = 1 )
159
160
s = cleanup_fractions (s )
160
161
return s
161
162
@@ -174,15 +175,15 @@ def numerize_ordinals(s, ignore=None, bias=None):
174
175
if m is not None :
175
176
def _repl_ordinal (m ):
176
177
m1 = m .group (1 )
177
- m2 = str (consts .ALL_ORDINALS ['second' ])
178
+ m2 = str (consts .ALL_ORDINALS ['second' . lower () ])
178
179
return f'{ m1 } <num>{ m2 } nd'
179
180
s = re .sub (pat , _repl_ordinal , s , count = 1 )
180
181
pat = re .compile (r'(^|\W)({})(?=$|\W)' .format (all_ords ), flags = re .IGNORECASE )
181
182
m = re .search (pat , s )
182
183
if m is not None :
183
184
def _repl_ordinal (m ):
184
185
m1 = m .group (1 )
185
- m2 = str (consts .ALL_ORDINALS [m .group (2 )])
186
+ m2 = str (consts .ALL_ORDINALS [m .group (2 ). lower () ])
186
187
return f'{ m1 } <num>{ m2 } ' + m .group (2 )[- 2 :]
187
188
s = re .sub (pat , _repl_ordinal , s , count = 1 )
188
189
return s
0 commit comments