我有一个包含以下语法的文件:
<whitespace_sequence><string><whitespace_sequence><--More--><whitespace_sequence><string_sequence><newline>
使用Python(2.4),我想删除序列:
"<whitespace_sequence><--More--><whitespace_sequence>" from the above grammar.
我使用以下正则表达式模式:
x = re.compile("(\s+)("--More--")(\s+)")
但它与我需要移除的序列不匹配。
答案 0 :(得分:1)
看起来你的正则表达式的问题是双引号。没有它们,它可以正常工作:
>>> sample = ' string --More-- anotherstring \n'
>>> import re
>>> re.search(r'(\s+)(--More--)(\s+)', sample).groups()
(' ', '--More--', ' ')
FWIW,这是直接从示例字符串开发正则表达式的一个很好的资源: http://txt2re.com/
了解正则表达式的更多资源是:http://www.regular-expressions.info/