在处理自然语言时123,000,345如果以标点符号分割,就会出现大问题,好好的一个数字就被逗号肢解了,因此可以先下手把数字处理干净(逗号去掉)。
代码如下:
#!/usr/bin/env python
import re
s = 'abc,123,456,789,def'
p = re.compile(r'\d+,\d+?')
for m in p.finditer(s):
mm = m.group()
print mm
print s
s_back = s.replace(mm,mm.replace(',',''))
print s_back
s = s_back
更具体的是找正则式“数字,数字”找到后用去掉逗号的替换
#!/usr/bin/env python
import re
s = 'abc,123,456,789,def'
p = re.compile(r'\d,\d')
while 1:
m = p.search(s)
if m:
mm = m.group()
s = s.replace(mm,mm.replace(',',''))
else:
break
print s