首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自一组字符串的广义正则表达式

来自一组字符串的广义正则表达式
EN

Stack Overflow用户
提问于 2016-11-22 00:58:27
回答 1查看 62关注 0票数 0

我有这个问题。我需要自动找到一种方法来生成匹配一组字符串的正则表达式。

例如,给定输入中的一组字符串:

代码语言:javascript
复制
S = ["Casino Royale (1928)", "Mission Goldfinger", "A view to a kill"]

在开始时创建一个匹配第一个字符串的正则表达式进行迭代,因此:

代码语言:javascript
复制
regex1 = "\w{6}\s\w{6}\s\(\d{4}\)"

然后将regex1与第二个字符串进行比较,因此:

代码语言:javascript
复制
regex2 = "\w{6-7}\s\w{6-10}(\s\(\d{4}\))?"

然后是最后一个字符串,所以最终输出是:

代码语言:javascript
复制
regex_output = "\w{1-7}\s\w{4-10}(\s\w{2}\s\w\s\w{4}|\s\(\d{4}\))?"

如果有可能实现的话我很愿意。也许这是复杂性理论的问题。

谢谢你的建议。

EN

回答 1

Stack Overflow用户

发布于 2016-11-22 02:25:53

使用文字的交替:

代码语言:javascript
复制
^\QCasino Royale (1928)\E|\QMission Goldfinger\E|\QA view to a kill\E$

\Q...\E表示要按字面匹配包含的字符。

这种方法当然可以处理任意大的字符串列表。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40725448

复制
相关文章

相似问题

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