加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

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

发布时间:2020-12-16 20:15:02 所属栏目: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(

分析

数字中经常是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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读