将字符串中间的可选子字符串与正则表达式匹配

2024-05-15 22:18:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个正则表达式来提取标题、副标题和发布者。我想知道如何使字幕搜索可选。在

我的格式是:

Title-(Subtitle)-[Publisher]

其中:

  • Title–是我要在第一个捕获组中捕获的字符串。在
  • (Subtitle)–是一个由括号括起来的可选字符串 在第二个捕获组中捕获。在
  • [Publisher]–是一个用方括号括起来的字符串,我想在第三次捕获时捕获它 组。在

例如:

^{pr2}$

现在,我有一个regex(see online)来捕获第一个和第三个:

(.*)-\((.*)\)-\[(.*)\]

我的问题是我不知道如何构造一个正则表达式来匹配第二行(第一组中的标题,第二组中的标题应该是空的,第三组中的标题应该是空的,第三组中的标题是带发布者的),如果它没有包含在括号中的副标题。这可以在一个正则表达式中完成吗?在


Tags: 字符串标题title格式publisherregex括号online