如何使用正则表达式格式化 f 字符串?

2023-12-04

我有一些最初用加号连接并包含正则表达式字符串的字符串。这是一个例子:

"Level 4: " + re.sub(r"(\w)([A-Z])", r"\1 \2", talents[1]) + "\n\n"

但是,我一直想使用更正确的格式。我对 f 弦做了一些研究,我想在这里使用它们。我这样尝试过:

f'Level 4: {re.sub(r"(\w)([A-Z])", r"\1 \2", talents[1])} \n\n'

然而,我的编辑对我大喊大叫,说表达式片段含有反斜杠。在这种情况下,f 弦不是适合这项工作的工具吗?

编辑: 根据@jwodder的要求,这是我从Python得到的错误(我使用的是3.6)

SyntaxError: f-string expression part cannot include a backslash

您无法在 f 字符串中插入带有反斜杠的表达式,目前这是设计限制。您可以将其分为两个语句:

subst = re.sub(r"(\w)([A-Z])", r"\1 \2", talents[1])
msg = f'Level 4: {subst} \n\n'

(旁注:目前有一个提案(PEP 536)放宽此类限制,使原始代码按预期工作,但尚未被接受或实现。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用正则表达式格式化 f 字符串? 的相关文章

随机推荐

  • 为什么 ASP.NET FormsAuthentication cookie 无法验证用户身份?

    我有一个使用默认 SqlMembershipProvider 和 FormsAuthentication 的网站 我可以使用内置的登录控件和 或以编程方式调用所有方法来对用户进行身份验证并获得相同的结果 用户已通过身份验证并创建了 cook
  • 查找数组中的多个众数

    我正在尝试编写一个java方法来查找数组中的所有模式 我知道有一种简单的方法可以在数组中查找模式 但是当有多个单一模式时 我的方法仅输出其中一个模式 我试图找到一种方法 但不确定如何解决这个问题 谁能帮我找到数组中的所有模式 谢谢 是的 这
  • 是否有 R 函数来转义正则表达式字符的字符串

    我想构建一个正则表达式来替换一些要搜索的字符串 因此需要对这些字符串进行转义 然后才能将它们放入正则表达式中 这样如果搜索的字符串包含正则表达式字符 它仍然有效 有些语言具有可以为您执行此操作的函数 例如 pythonre escape h
  • 参数类型“T”可能寿命不够长

    我正在尝试用 Rust 编写一个小程序 但无法让它工作 我在一个较小的脚本中重现了该错误 fn main let name String from World let test simple name println Hello test
  • sed 在两个标签之间查找并替换多行

    我想找到并替换一个模式 text hold1 hold2
  • Flash Builder - 如何构建或包含 SWC

    我试图在这里重新创建本教程的现代化版本 但我在构建和引用 SWC 文件以包含在我的 Flash Builder 项目中时遇到问题 每当我尝试引用 SWC 时 Flash 都会说它 不是编译时常量 任何人都可以帮助我构建 SWC 的过程 主要
  • Zend框架文件上传非法上传

    我正在尝试使用其他文本字段以普通形式上传文件 到目前为止 文件被上传到临时文件夹 但没有上传到我的目标文件夹 我总是收到此错误 文件 上传 被非法上传 这可能是一次可能的攻击 我已经检查了临时文件的文件名 并且在正确的文件夹中具有正确的 u
  • PHP - 使用正则表达式模式删除中间的短代码和内容

    我有以下字符串 text My example text shortcode name content of shortcode shortcode name is cool 以及以下模式 pattern shortcode name 它给
  • Maven 下载的扩展名为 .lastUpdated

    我有一个带有 m2eclipse 和 subversive 的 Eclipse 设置 我从svn导入了maven2项目 但我收到错误消息 提示缺少一大堆工件 例如 缺少工件 org springframework spring test j
  • 在javascript中-1是真还是假?

    当我使用indexOf时 我无法确定 1在javascript中是真还是假 let a abc indexOf abc let b def indexOf abc console log a 0 console log b 1 consol
  • 灵活的 App Engine + 应用程序身份 (Python)

    有没有办法移植功能 from google appengine api import app identity from google appengine api import urlfetch 在灵活的环境中 我有一个在 Flex 环境上
  • C# WPF 将英文数字转换为阿拉伯数字

    我需要为我正在开发的应用程序显示阿拉伯数字字符的英文双精度字符 这是一个保存双精度数的示例类 public class Class1 private double someDouble 0 874 public double SomeDou
  • vb.net 如何以相反的字母数字顺序列出目录中的文件集合,与文件资源管理器>名称降序相同

    如何以与文件资源管理器名称倒序相同的反向字母数字顺序对目录文件路径列表进行排序 当单击 名称 两次时 当 后面的位数不同时 Array Sort 方法无法正确对文件名进行排序 例如 当视图按名称顺序排列时 文件名 Osopcoz 777 1
  • 换行到下一行时元素重叠

    当这些按钮换行到下一行时 如何防止它们彼此重叠 button link background 4479BA border solid 1px 20538D border radius 4px box shadow inset 0 1px 0
  • 使用 yum 下载包的所有依赖项的 RPM

    我正在尝试在我的系统上创建一个本地 yum 存储库 其中包含主要来自 CentOS 基础存储库的各种软件包 默认情况下 托管 yum 存储库的服务器不一定安装与将使用 yum 存储库的服务器相同的基础软件包 出于这个原因 我需要确保我的存储
  • 在 Linux 之外解析/评估/生成 CrontabExpressions?

    我正在构建一些需要调度输入的软件 我真的很想重新使用 crontab 的设计 因为它很有效 crontab 表达式可以很简单 5 每五分钟运行一次 或更复杂2 59 3 1 9 22 11 26 1 6 2003 2003 年 1 月至 6
  • xlsxwriter 按公式条件进行条件格式化

    我想将格式应用于列中的单元格 行索引为 5 7 8 9 10 11 和 13 我正在使用的代码如下 worksheet conditional format C4 C14 type formula criteria ISNUMBER MAT
  • 通过 PIL 使用多处理

    我有一些代码可以对一堆 Python 图像库 PIL 图像对象执行 独立 操作 我想尝试使用并行处理来加快速度 因此我阅读了下面的多处理模块 http docs python org library multiprocessing html
  • 继承类中静态方法的自引用返回类型

    With 多态这个正如我发现的 在 TypeScript 1 7 中here 我们可以在类中定义一个方法 其返回类型为this 并且自动地 任何扩展该类并继承该方法的类都会将其返回类型设置为各自的this类型 就像这样 class Mode
  • 如何使用正则表达式格式化 f 字符串?

    我有一些最初用加号连接并包含正则表达式字符串的字符串 这是一个例子 Level 4 re sub r w A Z r 1 2 talents 1 n n 但是 我一直想使用更正确的格式 我对 f 弦做了一些研究 我想在这里使用它们 我这样尝