找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 1747|回复: 1

[求助] 请教正则表达式

1

主题

1

帖子

1

积分

贫民

积分
1
Sani 发表于 2020-1-13 15:14:49 | 显示全部楼层 |阅读模式
本帖最后由 Sani 于 2020-1-13 17:39 编辑

各位大佬好,需要使用正则找出写法正确的千位数字
以下3个为格式正确的数字要匹配出来
42
1,234
6,235,678

以下2个格式不正确不需要匹配出来
12,34,567  (格式不对)
1234(没有逗号)


写了以下正则,匹配的结果把格式不对的12,34,567分成2段匹配出来了,还是不太严谨,请看如何写才能精确匹配?
import re, pyperclip
numberRegex = re.compile(r'''(
\b\d{1,3}
(,\d{3})*\b
)''', re.VERBOSE)
numberlist = str(pyperclip.paste())
matches = []
for groups in numberRegex.findall(numberlist):
    matches.append(groups[0])
print('\n'.join(matches))




运行结果:[size=13.0667px]

[size=13.0667px]42
[size=13.0667px]1,234
[size=13.0667px]6,235,678
[size=13.0667px]12
[size=13.0667px]34,567




回复

使用道具 举报

0

主题

3

帖子

3

积分

贫民

积分
3
knifefox 发表于 2020-1-26 09:48:36 | 显示全部楼层
  1. (?<!\d,)\b\d{1,3}(,\d{3})*\b(?!,\d)
复制代码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表