我可能对正则表达式有非常基本的问题。我有以下正则表达式,当在应用程序中硬编码时它工作正常,但后来我用 ConfigParser 读取它似乎不起作用:
r"\[[+-]?\d+(?:\.\d+)?\]"
我的阅读方式是:
Config = ConfigParser.ConfigParser()
Config.read("test.conf")
test_regex = Config.get("test","test_regex")
search_pattern = re.compile(test_regex)
test_result = search_pattern.findall(text_to_parse)
test.conf 部分
[test]
test_regex=r"\[[+-]?\d+(?:\.\d+)?\]"
测试的输入可能如下所示:
text_to_parse = " Here is the [TEST-DONE]" // Success: my regex is extracting [TEST-DONE]
text_to_parse = " Here is the some text" // Failure my regex returns empty list
这个问题有什么解决办法吗?非常感谢,
Serhiy。
编辑:是我的注意力错误,正如我在回答的评论中提到的那样,但是当它在文件中时从正则表达式中删除 r 的解决方案有很大帮助。