【发布时间】:2016-12-01 11:24:44
【问题描述】:
我需要一个 JS 正则表达式来匹配仅基于已知的第一个和最后一个子字符串以及空格数的字符串 - 我不关心第一个和最后一个子字符串之间的长度或性质字符串(除了确切的空格数)。
以下是一个可能的起始字符串(从中我得到第一个和最后一个子字符串以及空格的数量):
cat apple dog mouse
由此,我现在知道该字符串以cat 开头,以mouse 结尾,并且正好包含3 个空格(它们可以在两端之间的任何位置,但它们不会是连续的)。
我需要匹配的字符串可能是:
catfish mouse mouse dormouse mouse mouse
或cat mouse mouse mouse mouse mouse
所以,我需要匹配的是,在第一种情况下是catfish mouse mouse dormouse,在第二种情况下是cat mouse mouse mouse - 在这两种情况下,一个字符串都以cat 开头,以mouse 结尾并且正好包含3空格。目前,我的所有尝试都匹配上面的整个示例字符串,而不仅仅是从cat 到第三个mouse。这是我最近的失败:
cat(?:(?![\s]{4,}).*)mouse
我强烈怀疑我想太多了 - 但感谢您的任何建议。
【问题讨论】:
标签: javascript regex pattern-matching