Python3.3、OS X 7.5
我正在尝试查找定义如下的 4 字符子字符串的所有实例:
- 第一个字符 = 'N'
- 第二个字符 = 除了“P”之外的任何字符
- 第三个字符 = 'S' 或 'T'
- 第四个字符 = 除了“P”之外的任何字符
我的查询如下所示:
re.findall(r"\N[A-OQ-Z][ST][A-OQ-Z]", text)
除了在两个子字符串重叠的一种特殊情况下,这是有效的。该案例涉及以下 5 个字符的子字符串:
'...NNTSY...'
该查询捕获第一个 4 个字符的子字符串 ('NNTS'),但不捕获第二个 4 个字符的子字符串 ('NTSY')。
这是我第一次尝试正则表达式,显然我遗漏了一些东西。