首先,这是使用preg.
字符串我正在尝试匹配:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa b c d xp
Run Code Online (Sandbox Code Playgroud)
我的正则表达式和他们的比赛:
(\S*\s*){0,1}\S*p = "d xp"
(\S*\s*){0,2}\S*p = "c d xp"
(\S*\s*){0,3}\S*p = NO MATCH (expecting "b c d xp"
(\S*\s*){0,4}\S*p = entire string
(\S*\s*){0,5}\S*p = entire string
Run Code Online (Sandbox Code Playgroud)
奇怪的是,如果我删除单个"a",它就有效.另外,(\S*\s*){0,3}\Sp或(\S*\s){0,3}\S*p两者兼而有之.
有人可以解释为什么第三种情况导致没有匹配而不是"bcd xp"?
TIA!