首页 > 解决方案 > 使用带变量的模糊正则表达式,同时仍指定错误

问题描述

我在 python 中使用正则表达式库并尝试进行模糊匹配。

我需要在我的搜索字符串中使用一个变量,这是我在这篇文章之后得到的代码

x = regex.search(rf"(?b){variable}{d}",s)

这使NameError: name 'd' is not defined

问题是我想用{d}标签指定错误的类型,但这也被解释为一个变量。到目前为止,我想出的唯一解决方案就是分配d = "d". 寻找一种更“正确”的方式来实现这一目标。

示例案例:

variable = "amazing"
s = 'amaing analogy'
x = regex.search(rf"{variable}{d}",s)
x.group()

预期输出:“amaing”

标签: pythonregex

解决方案


您可以通过添加另一个当前括号来转义当前括号

x = regex.search(rf"(?b){variable}{{d}}",s)

推荐阅读