给定一个正整数字符串,使用Python正则表达式在其千分位上添加逗号

Python进阶者
• 阅读 365

大家好,我是皮皮。

一、前言

前几天在Python黄金青铜群【沐】问了一个Python正则表达式的问题,这里拿出来给大家分享下。

题目:给定一个正整数字符串,如 12345678、 345678,使用正则表达式在其千分位上添加逗号,如 12,345,678、345,678。

二、实现过程

这里ChatGPT给了一个答案,可以使用正则表达式和字符串替换来实现在千分位上添加逗号的操作。

假设输入的正整数字符串为 num_str,可以使用以下正则表达式进行匹配:

(\d)(?=(\d{3})+$)

该正则表达式会匹配任何一个数字,如果它后面跟着一组连续的三个数字,直到字符串结尾。也就是说,这个正则表达式能够匹配所有需要添加逗号的位置。

然后,我们可以使用字符串替换函数将逗号插入到匹配位置的后面,实现在千分位上添加逗号的操作。可以使用 Python 的 re.sub 函数来实现这个功能,示例如下:

import re

num_str = "12345678"

formatted_num_str = re.sub(r'(\d)(?=(\d{3})+$)', r'\1,', num_str)

print(formatted_num_str)  # 输出: 12,345,678

更多关于 Python 正则表达式的介绍和用法可以参考官方文档:re — Regular expression operations。

给定一个正整数字符串,使用Python正则表达式在其千分位上添加逗号

顺利地解决了粉丝的问题。

三、总结

大家好,我是皮皮。这篇文章主要盘点了一个Python正则表达式的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【沐】提问,感谢【ChatGPT】给出的思路和代码解析,感谢【eric】等人参与学习交流。

点赞
收藏
评论区
推荐文章
Python进阶者 Python进阶者
2年前
编写一个闭包函数,要实现的功能是计数功能
大家好,我是皮皮。一、前言前几天在Python最强王者交流群有个叫【杰】的粉丝问了一个Python装饰器的问题,这里拿出来给大家分享下,一起学习下。二、解决过程这里【东哥】给出了解答,其实这个题目就是在考你装饰器的内容。代码如下:count0defwrapper(func):definner(args,kwargs):g
Python进阶者 Python进阶者
2年前
盘点Python正则表达式中的贪婪模式和非贪婪模式
大家好,我是我是皮皮。一、前言前几天在Python最强王者交流群有个叫【杰】的粉丝问了一个关于Python正则表达式的问题,其中涉及到Python正则表达式中的贪婪模式和非贪婪模式,讨论十分火热,这里拿出来给大家分享下,一起学习。二、解决过程这里分享【小王】大佬的解答,一起来看看吧,下面是他给的一个示例代码。importretxt"Thisis
Python进阶者 Python进阶者
1年前
这个JS代码中目标数据用Python正则表达式如何提取?
大家好,我是皮皮。一、前言前几天在Python白银群【凡人不烦人】问了一个Python正则表达式的问题,这里拿出来给大家分享下。这个ts,token可以同时取出吗?二、实现过程这里【甯同学】给出了一个思路,使用正则表达式实现,如下所示:顺利的提取到了目标数
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Python进阶者 Python进阶者
1年前
将字符串里的\x01,\x02这些替换掉用正则表达式无效?
大家好,我是皮皮。一、前言前几天在Python白银群【凡人不烦人】问了一个Python正则表达式的问题,这里拿出来给大家分享下。将字符串里的\x01,\x02这些替换掉用mystrre.sub(r'\x0d','',mystr)这个结果不对,是什么原因呢?
Python进阶者 Python进阶者
1年前
盘点一个Python正则表达式的问题
大家好,我是皮皮。一、前言前几天在Python白银群【whoisme】问了一个Python正则表达式的问题,这里拿出来给大家分享下。下图是他的正则表达式:二、实现过程这个正则表达式还是蛮复杂的,在Python中,正则表达式中的问号?表示前面的字符出现0次或
Python进阶者 Python进阶者
10个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
Python进阶者 Python进阶者
1年前
尝试安装包的时候遇到的这样的错误,然后我尝试更新pip发现几乎报了同样的错,如何解决?
大家好,我是皮皮。一、前言前几天在Python白银群【黑白人生】问了一个Python基础的问题,这里拿出来给大家分享下。二、实现过程这里【ChatGPT】给出了一个思路,如下所示:开代理可能会影响Python库安装,原因如下:1.代理可能会阻止Python
Python进阶者 Python进阶者
1年前
我让gpt写了一段正则表达式代码,可是运行报错,可以帮忙看看哪里出了问题?
大家好,我是皮皮。一、前言前几天在Python最强王者群【HZL】问了一个Python正则表达式的问题,这里拿出来给大家分享下。截图如下图所示:单独跑的这一行,跑出了下图这个。这个报错是你提取了4列,应该赋值给4列,而不应该是1列。二、实现过程这里【大锤子
Python进阶者 Python进阶者
1年前
使用PyInstaller工具将Python程序打包成Mac可执行文件步骤
大家好,我是皮皮。一、前言前几天在Python钻石群【JethroShen】问了一个Python打包的问题,这里拿出来给大家分享下。二、实现过程这里【eric】问了【ChatGPT】,并给出了代码,如下所示:在Mac系统中,Python程序不能直接打包成.