【发布时间】:2020-09-16 09:33:26
【问题描述】:
我正在尝试在 Python 上运行正则表达式查询,但遇到以下问题:
在法语中,主语可以出现在动词前后。 例如,句子“she says”可以翻译成“elle dit”和“dit-elle”,其中“elle”是“she”,“dit”是“says”。
是否可以只捕获包含“elle”和“dit”的句子,无论主语“elle”是在动词“dit”之前还是之后?我从以下开始:
(elle).{0;10}(dit).{0;10}(elle)
但是现在我想在找到另一个(elle) 时将其设为可选。 * 和 + 运算符在这种情况下没有帮助。
【问题讨论】:
-
(((elle).{0,10}(dit).{0,10}) | (.{0,10}(dit).{0,10}(elle)))? -
感谢您的回答。我有一个列表中的主题和动词列表。最终,我想使用 (?P
) 和 (?P ) 存储在给定句子中找到的主语和动词,你的答案是否适用? -
?P代表什么? -
表示这是一个命名的捕获组,名称在符号内。有关示例,请参见下面的 Wiktor 回答。