python - 使用 re.sub() 将模式大写并在该模式之前添加一些文本
问题描述
这篇文章是我上一个问题的后续。
所以我有以下字符串。
string = "A / (1 + e ^ (-1 * X))"
而且我想创建一个函数来输出一个字符串,该字符串具有所有小写字母序列,而前一个字符串中的括号后面没有以大写字母写成Math.
例如
(1 + e)
会回来(1 + Math.E)
(5 ^ 2 * pi)
会回来(5 ^ 2 * Math.PI)
这是我到目前为止所拥有的
re.sub(r'([a-z]+)(?!\(.*?\))(?![a-z])', r'Math.\1', func)
正则表达式工作正常,但我不知道如何将模式大写。
解决方案
只需使用一个功能,即
re.sub(r'([a-z]+)(?!\(.*?\))(?![a-z])', lambda x: f'Math.{x[1].upper()}', s)
推荐阅读
- angular - 将参数传递给角度指令
- powershell - 将变量的值存储为类型
- r - 值的光栅逻辑索引范围
- mysql - 如何将 MySQL 日期时间 UMT 转换为实际时区
- jhipster - 是否可以在一个微服务集群中拥有多个 Jhipster UAA 副本?
- python - 找到时在网页上显示项目,而不是一次全部显示
- c - 当我想要 64 位时,函数返回 32 位地址
- python - 对每个客户每年的交易趋势进行排名
- javascript - Firebase Admin SDK 在 Google Cloud Storage 上下载/检索文件
- java - 使用 power mockito 模拟静态方法