Python - 如何用 'p' (4p5->4.5) 替换数字 (4p5) 中的 '.'?

标签 python regex replace

<分区>

我有一个程序可以打印出一些用 'p' 代替小数点的数据,以及一些其他信息。我试图用 '.' 替换 'p'

程序输出示例:

out_info = 'value is approximately 34p55'

我想把它改成:

out_info_updated = 'value is approximately 34.55'

我尝试使用 re.search 提取数字并将 p 替换为 .,但将其重新插入成为问题。我无法弄清楚用于 re.sub 的模式可以完成这项工作。 有人可以帮忙吗?

最佳答案

给你:

import re
out_info = "value is approximately 34p55"
re.sub(r'(\d+)p(\d+)', r'\1.\2', out_info)

输出是:

'value is approximately 34.55'

这表示“查找一个或多个数字,然后是 p,然后是一个或多个数字,然后用第一组数字替换所有数字,然后是 ,然后是第二组数字。”

关于Python - 如何用 'p' (4p5->4.5) 替换数字 (4p5) 中的 '.'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16434488/

相关文章:

Python:使用列表检查单独列表中的项目,如果存在则替换

python - 保存后维护通过信号填充的模型之间的关系

regex - 如何使用字符串而不是字符创建类似否定字符类的东西?

python - 功能附加/扩展

python - 将html数据解析成python列表进行操作

python - EMAIL id matcher-python正则表达式无法弄清楚

mysql - 如何一次在所有数据库上运行 sql 命令?

python - 如果长度小于 x 则替换字符串

python BeautifulSoup soup.findAll(),如何使搜索结果匹配

python - 将大量文本转换为 utf-8