【发布时间】:2016-11-13 10:08:54
【问题描述】:
我正在寻找一个能够将单词 n 匹配 n 的正则表达式。假设n := 2,它会产生:
Lorem ipsum dolor sit amet, consectetur adipiscing elit
Lorem ipsum、ipsum dolor、dolor sit、sit amet(注意这里的逗号)、consectetur adipiscing、adipiscing elit。
我曾尝试使用\b 设置单词边界,但无济于事。我真的很想找到一个能够给我n 单词的正则表达式....../\b(\w+)\b(\w+)\b/i 无法削减它,甚至尝试了多种组合。
【问题讨论】:
-
@Biffen 这个问题怎么重复?
-
这基本上是一个give-me-a-regex“问题”。它们都是(在某种程度上)那个副本的副本。
-
您需要在单词之间重叠匹配和
\W+。检查jsfiddle.net/ncxucvfk -
@JoColina 我认为您还没有完全理解
\b的工作原理:(\w+)\b(\w+)永远无法匹配任何内容,因为根据定义,从来没有单词边界 (@987654337 @) 到单词字符 (\w) 之间。您将不得不考虑空格和标点符号等非单词字符。
标签: javascript regex node.js text nlp