python正则表达式去掉数字中的逗号(python正则匹配逗号)

分析

数字中经常是3个数字一组,之后跟一个逗号,因此规律为:***,***,***

正则式


[a-z]+,[a-z]?


import re

sen = "abc,123,456,789,mnp"
p = re.compile("\d+,\d+?")

for com in p.finditer(sen):
    mm = com.group()
    print "hi:",mm
    print "sen_before:",sen
    sen = sen.replace(mm,mm.replace(",",""))
    print "sen_back:",sen,'\n'

技巧

使用函数finditer(string[,pos[,endpos]]) | re.finditer(pattern,string[,flags]):

搜索string,返回一个顺序访问每一个匹配结果(Match对象)的迭代器。


sen = "abc,mnp"
while 1:
    mm = re.search("\d,\d",sen)
    if mm:
        mm = mm.group()
        sen = sen.replace(mm,""))
        print sen
    else:
        break

这样的程序针对具体问题,即数字3位一组,如果数字混杂与字母间,干掉数字间的逗号,即把“abc,4,mnp”转化为“abc,1234789,mnp”

更具体的是找正则式“数字,数字”找到后用去掉逗号的替换


sen = "abc,""))
        print sen
    else:
        break
print sen

相关文章

方案一 代码 在Python中,可以使用wave模块来读取双通道(立...
简介 一个用python实现的科学计算,包括: 1、一个强大的N维...
使用爬虫利器 Playwright,轻松爬取抖查查数据 我们先分析登...
轻松爬取灰豚数据的抖音商品数据 调用两次登录接口实现模拟登...
成功绕过阿里无痕验证码,一键爬取飞瓜数据 飞瓜数据的登录接...
一文教你从零开始入门蝉妈妈数据爬取,成功逆向破解数据加密...