首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过排除一组未捕获的重复单词来捕获单词

通过排除一组未捕获的重复单词来捕获单词
EN

Stack Overflow用户
提问于 2016-07-31 00:35:13
回答 2查看 53关注 0票数 1

我想从下面的字符串中提取所有内容,除了“开始”和“从”

从古法语,从拉丁因诺琴蒂,从无辜-‘不伤害’(基于夜间‘伤害’)。

这是我的准则:

代码语言:javascript
复制
(?:from)(.*)(?:,.from)(.*)

对于这个正则表达式,我将得到Old French, from Latin innocentiainnocent- ‘not harming’ (based on nocere ‘injure’).作为结果。如何编辑regex代码段,使其能够匹配预期条件而不重复非捕获组(?:,.from)

其结果应该是:

  • Old French
  • Latin innocentia
  • innocent- ‘not harming’ (based on nocere ‘injure’).
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-31 00:46:44

代码语言:javascript
复制
line="from Old French, from Latin innocentia, from innocent- ‘not harming’ (based on nocere ‘injure’)."
line.split(/, from|from/)

=>

代码语言:javascript
复制
[ '',
 ' Old French',
 ' Latin innocentia',
 ' innocent- ‘not harming’ (based on nocere ‘injure’).' ]

可能已经够近了。在线试用:https://repl.it/Chp8

票数 1
EN

Stack Overflow用户

发布于 2016-07-31 00:47:18

您可以使用正则表达式来拆分字符串。这将以比使用回溯噩梦.*更快的速度返回相同的结果。

您可以使用此正则表达式(基于您的正则表达式)这样做:

代码语言:javascript
复制
(,.)?from

有关拆分的更多信息可以找到这里

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

https://stackoverflow.com/questions/38679757

复制
相关文章

相似问题

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