python - Python:正则表达式并替换随机子字符串
问题描述
我需要一些关于python中正则表达式的帮助。
例如:
我有字符串:" "substring 1" + ("substring 2" | "substring 3") "
...带有子字符串的数量和任何运算符。
我想将此字符串转换为:f (a) + (f (b) | f (c))
即用包含参数的函数替换子字符串,就是保持运算符顺序的字符串。
有没有办法做到这一点?谢谢
解决方案
您可以尝试查找和替换 2 个引号之间的任何子字符串:
import re
s = ' "substring 1" + ("substring 2" | "substring 3") '
print(re.sub(r'("[^"]*")', r'f(\1)', s))
推荐阅读
- sql - 没有 GROUP BY 表达式的 Group by Clause 错误
- c++ - OpenMP 如何在归约子句中使用原子指令?
- javascript - Openlayers 无法传递 innerHTML 内容
- report - 运行 cognos 报告后,数据未显示
- typescript - VSCode 文档注释中的装饰器格式错误
- javascript - 使用 v-for 在 vue.js 中生成单选按钮
- microsoft-graph-api - 无法从 Graph API 发布团队包
- javascript - 如何使用 \n 转换文本并在节点 js 中添加不带字符的真正新行?
- python - 我想计算我的python数据框中列中重复值的实例
- python - Python跳过空单元格