我希望在字符串中找到与特定模式匹配的单词.问题是,如果单词是电子邮件地址的一部分,则应忽略它们.
简化"正确单词"的模式\w+\.\w+- 一个或多个字符,实际句点和另一系列字符.
例如,导致问题的句子是a.a b.b:c.c d.d@e.e.e.
目标是仅匹配[a.a, b.b, c.c].对于我构建的大多数正则表达式,e.e也会返回(因为我使用了一些单词边界匹配).
例如:
>>> re.findall(r"(?:^|\s|\W)(?<!@)(\w+\.\w+)(?!@)\b", "a.a b.b:c.c d.d@e.e.e")
['a.a', 'b.b', 'c.c', 'e.e']
如何只匹配不包含"@"的单词?