我正在正则表达式部分学习findall()
方法。我有一个找不到解决方案和解释的问题。 findall()
方法无法正确识别正则表达式模式,或者无法正确识别正则表达式模式(当我使用{}
指定要匹配的字符串编号时。
为明确起见,我以本书中的示例为例。这是代码:
import re
haRegex = re.compile(r'(Ha){3}')
mo = haRegex.findall('HaHaHaHaHaHa')
运行脚本时,我得到了:
['Ha', 'Ha']
但是,当我将(Ha){3}
替换为HaHaHa
时,我得到了
['HaHaHa', 'HaHaHa']
这是我期望的第一个脚本。
此外,该模式可与search()
方法完美配合。我有
'HaHaHa'
使用group()
方法。
有人知道发生了什么事吗?