Skip to main content
 首页 » 编程设计

python 正则表达式

2025年02月15日26myhome

给定一个看起来像这样的文件:

mmm     55  v1235 
 
mmm     111 v1241 
 
mmm     22  v2453 
 
mmm     1   v3464 
 
mmm     555 v5353 

我希望结果是(用空格替换所有数字):

mmm         v1235 
 
mmm         v1241 
 
mmm         v2453 
 
mmm         v3464 
 
mmm         v5353 

好吧,我可以找到长度减去并转向空白。 我可以一行完成吗?

类似的东西,但在第二个参数中是一个字符串而不是正则表达式:

new_line = re.sub(r'mmm\d+', r'mmm\s+', line)

请您参考如下方法:

使用前瞻,您可以检查匹配数字后是否跟有 0 个或更多数字和一个空格,如下所示:

line = re.sub(r'\d(?=\d* )', ' ', line); 

RegEx Demo

(?=\d* ) 是肯定的前瞻性断言我们有 0 个或多个数字并且匹配数字旁边有一个空格。