首页 > 解决方案 > 使用正则表达式查找逗号由数字分隔的事件

问题描述

我需要找到逗号在两边用数字分隔的情况。

例如:

SampleString ='A,B,C, 1, 2, 3, 4, G'

我需要用逗号前后的所有空格替换逗号(没有空格)。只有当逗号分隔数字时,我才需要这样做。

CleanString =re.sub(r([0-9]+)\s?,\s?([0-9]+)' ,r"\g<1>,\g<2>",SampleString)

这个输出给了我A,B,C, 1,2, 3,4, G. 我需要的输出是A,B,C, 1,2,3,4, G

标签: pythonregex

解决方案


您可以使用以下正则表达式:

import re

SampleString = 'A, B,B, M1, 3, 44, 45, 46, 47, G, 1, 33'

CleanString = re.sub(r'(\b\d+)(\s*,\s*)(?=\d+\b)', r'\1,', SampleString)

print(CleanString)

输出:

A, B,B, M1, 3,44,45,46,47, G, 1,33

推荐阅读