通过一些遗留代码,我在模型过滤器中偶然发现了这个正则表达式:
"[[:<:]](%s)[[:>:]]" % value
我知道内部方括号与文字方括号匹配,但我找不到对冒号和 lt/gt 的任何引用。
这应该匹配什么?
通过一些遗留代码,我在模型过滤器中偶然发现了这个正则表达式:
"[[:<:]](%s)[[:>:]]" % value
我知道内部方括号与文字方括号匹配,但我找不到对冒号和 lt/gt 的任何引用。
这应该匹配什么?
正如您问题的评论者所指出的那样,这可能是一个错误,或者有人拉扯您的链条。我无法想象它有什么用处。但是要明确回答您的问题,这里有一些可以匹配的内容。这假设 Python 已经替换%s
为foo
[]foo:]
:]foo:]
<]foo:]
<]foo>]
[]foo>]
[]foo:]
[]foo[]
也许这是一次(失败的)尝试找到类似<foo>
或:foo:
正则表达式的解释(我已经删除了:
多余的重复项,并且似乎表明这完全是一个错误,或者不打算使用 Python 运行re
):
[[:<] # match one `[` or `:` or `<`
] # one literal right bracket
( # open capture group
foo # literal string `foo`, or whatever replaced `%s`
) # close capture group
[[>:] # match one `[` or `>` or `:`
] # one literal right bracket
这是什么意思呢?你的猜测和任何人的一样好。