我正在尝试取消转义正则表达式模式以将其应用于字符串。 它实际上是动态的,我不知道它会是什么样子,但在整个测试过程中,我遇到了一个问题,带有转义正则表达式模式的字符串如下所示:
\\d{4}
我已经编写了一个简单的正则表达式,它替换了反斜杠和字符的每个组合with just a character
我是这样应用的:
sub(r"\\(.)", "\\1", escaped_pattern)
但它后来给我的是d{4}
而不是我所期望的\d{4}
。你知道吗
我试过用原始字符串来表示repl,escape\unescape,它仍然没有返回我期望的结果。如果有任何帮助,我将不胜感激。你知道吗
编辑
escaped_pattern = settings.reg_exp
regexp = sub(r"\\(.)", "\\1", escaped_pattern)
search(regexp, string_to_regexp).group()[0]
在搜索模式中尝试
r"\\\\(.)"
,在替换模式中尝试'\\\1'
。 在这里工作正常:https://regex101.com/r/M3ikqj/1基于您的更新,我很肯定,如果您停止尝试取消显示,您将得到您想要的输出。你知道吗
相关问题 更多 >
编程相关推荐