Python字符串替换为正则表达式替换变量

stackoverflowuser2010

我有以下字符串,其中子字符串的格式2.5不正确:'It costs 2. 5. That is a lot.'

如何删除之间的空间2.5

我试过了:

s = 'It costs 2. 5. That is a lot.'
s = s.replace('. ', '.')
print(s) # It costs 2.5.That is a lot.

但是,这也会删除5.之间正确放置的空间T我想我正在寻找sed样式的regex替代变量,例如s/\. \([0-9]\)/.\1/g如何在Python中做到这一点?

第四只鸟

如果后面的字符串可以以数字开头,那么您也可以在第二个数字之后匹配点。

如果您不想在两者之间匹配换行符,则可以匹配所有不带换行符的空白字符。

\b(\d+\.)[^\S\r\n]+(\d+\.)

说明

  • \b 单词边界
  • (\d+\.)捕获组1,匹配1个以上的数字和一个点
  • [^\S\r\n]+ 匹配1个以上无换行符的空白字符
  • (\d+\.)捕获组2,匹配1个以上的数字和下一个点

正则表达式演示| Python演示

在替换使用组1和组2中。

例如

import re
s = ("It costs 2. 5. That is a lot.\n"
    "It costs 2. 5 items, that is a lot.")
pattern = r"\b(\d+\.)[^\S\r\n]+(\d+\.)"
print(re.sub(pattern, r"\1\2", s))

输出量

It costs 2.5. That is a lot.
It costs 2. 5 items, that is a lot.

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python正则表达式替换为字符串

来自分类Dev

正则表达式:将“ @@”替换为“ @”,并将“ @”替换为某些字符串

来自分类Dev

正则表达式。将HTML字符串替换为空字符串

来自分类Dev

使用正则表达式将字符串替换为字符串

来自分类Dev

正则表达式将数字字符串替换为字符串

来自分类Dev

正则表达式搜索并替换包含正则表达式语句的变量字符串

来自分类Dev

正则表达式-查找并替换字符串

来自分类Dev

正则表达式替换重复字符串

来自分类Dev

正则表达式替换字符串

来自分类Dev

用正则表达式替换字符串

来自分类Dev

PHP正则表达式字符串替换

来自分类Dev

使用正则表达式替换字符串

来自分类Dev

正则表达式替换字符串

来自分类Dev

Java字符串替换正则表达式

来自分类Dev

字符串数字正则表达式替换

来自分类Dev

正则表达式中的字符串替换

来自分类Dev

正则表达式替换总字符串

来自分类Dev

正则表达式用于字符串替换

来自分类Dev

使用正则表达式替换字符串

来自分类Dev

正则表达式替换字符串

来自分类Dev

正则表达式以@ ... @ .... @格式替换字符串

来自分类Dev

正则表达式从字符串替换(smarty)

来自分类Dev

使用正则表达式替换字符串;

来自分类Dev

如何使用正则表达式将变量替换为计算字符串中的值?

来自分类Dev

正则表达式替换为包含原始字符的字符串

来自分类常见问题

CLion正则表达式用找到的字符串替换为模式

来自分类Dev

想要使用正则表达式将字符串替换为数字

来自分类Dev

如何使用正则表达式将组值替换为空字符串

来自分类Dev

CLion正则表达式用找到的字符串替换为模式

Related 相关文章

热门标签

归档