我不确定如何提取我在正则表达式中创建的变量或组。具体为datetime
和IP
。我已阅读其他帖子和文档,但我有点困惑。我想知道是否有人可以为我生成一个例子。我想要做的是能够提取datetime
和IP
以供日后使用。也许存储在稍后要调用的变量中
示例日志:
log = 'Oct 7 13:24:36 192.168.10.2 2013: 10:07-13:24:35 httpproxy[15359]: id="0001"
httpproxy515139 = re.compile(r'(?P<datetime>\w\w\w\s+\d+\s+\d\d:\d\d:\d\d)\s+(?P<IP>d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}).*')
答案 0 :(得分:2)
此示例应该可以帮助您:
>>> import re
>>> sample = 'this is a sample text'
>>> third_word = re.compile(r'\S+ \S+ (?P<word>\S+) .*')
>>> ms = third_word.match(sample)
>>> ms.groupdict()
{'word': 'a'}
您需要访问返回的匹配对象的groupdict()
方法。