我将一个函数应用于令牌列表,如下所示:
def replace(e):
return e
def foo(a_string):
l = []
for e in a_string.split():
l.append(replace(e.lower()))
return ' '.join(l)
使用字符串:
s = 'hi how are you today 23:i ok im good 1:i'
函数 foo 更正s
. 但是,有些情况我想忽略,例如 12:i 或 2:i。我怎样才能应用foo
到所有没有被正则表达式解析的令牌:\d{2}\b:i\b|\d{1}\b:i\b
?也就是说,我希望foo
忽略所有带有23:i
or 01:e
or形式的标记1:i
。我在考虑一个正则表达式,但是,也许有更好的方法来做到这一点。
预期的输出将是:
'hi how are you today 23:i ok im good 1:e'
换句话说,该函数foo
忽略形式为nn:i
or的标记n:i
,其中n
是一个数字。