首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使regex与电视节目文件格式中所有可能的集号相匹配?

如何使regex与电视节目文件格式中所有可能的集号相匹配?
EN

Stack Overflow用户
提问于 2022-03-25 14:27:55
回答 1查看 153关注 0票数 4

我想要创建一个regex表达式,它与电视节目文件格式中所有可能的插集编号格式相匹配。

我目前有这个正则表达式,它与大多数示例列表(但不是所有示例)匹配。

代码语言:javascript
复制
(?:(?<=e)|(?<=episode)|(?<=episode[\.\s]))(\d{1,2})|((?<=-)\d{1,2})

它不匹配的是,当有两集直接接另一个e0102应该匹配0102

您可以通过测试用例这里找到regex示例。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-25 15:18:31

根据你的评论,我的假设如下:

  • 插集数不超过三位数;
  • 插集字符串将有1-3位数字的46,当它意味着一个范围的剧集;
  • 没有一个整数的5位数,假设相同的填充将用于两个数字在一个范围内的插曲;
  • 这意味着,4位6位数的长度需要平分。

为此,请尝试以下几点:

代码语言:javascript
复制
e(?:pisode)?\s*(\d{1,3}(?!\d)|\d\d\d??)(?:-?e?(\d{1,3}))?(?!\d)

这里是一个在线演示。您会注意到,我添加了更多的示例来展示上述假设。

  • e(?:pisode)?\s* -将“e‘’集‘与0+后面的空格字符匹配;
  • (\d{1,3}(?!\d)|\d\d\d??) -第一个捕获组,如果没有跟踪任何其他数字两位数,则捕获1-3位数字;
  • (?:-?e?(\d{1,3}))? -一个可选的非捕获组与嵌套的第二个捕获组寻找可选的连字符和文字'e‘尾随数字(1-3);
  • (?!\d) -没有剩余的尾随数字。
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71618585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档