PS: - >我知道有一个简单的解决方案,我的需要,我可以这样做,但是, - 我正在寻找一个“差异”的解决方案,为了学习的缘故&挑战清酒。所以,这只是为了解决一个传统方式较少的算法。RegExp JS关于顺序patttern匹配
我正在解决一个算法,并认为我有一切运作良好,但一个用例失败。那是因为我动态构建了一个正则表达式 - 现在,我的问题是这样的。
我需要按顺序匹配字母,直到一个不匹配,然后我只是“匹配”匹配的顺序。
所以......可以说,我是匹配此:
"zaazizz"
with this: /\bz[a]?[z]?/
"zizzi".match(/\bz[z]?[i]?/)
目前,这与匹配:[紫],但比赛只应[Z]
zzi仅匹配“zizzi”前面的“z”,按照zzi的顺序 - 我现在使用的是[z]?等等..所以它是可选的..但我真正需要的是顺序匹配..我只会从前面得到“zi”IF,它匹配:zzi根据我的正则表达式....所以,某种前瞻性要么 ?。我试过了?=和!=没有运气。
我不知道我理解你的问题。所以当你有“abcdefg”作为匹配,并且输入是“abczzzz”时,你想要“abc”作为输出?我会建议不使用正则表达式,但简单的单字符比较。 – PhilMasterG
是的 - 可以说字符串是:“zzbbabc”,我的匹配器是:zbba,它只会匹配“z”...请记住,我的匹配器是动态的,它会更改每个迭代..所以我可以匹配第一?加上顺序的每一个后面的顺序。根据前面的例子,如果我的匹配器是“zzbzb”,它只会匹配“zzb”。 –
好吧,所以我真的建议只比较每个字符,直到不匹配,不使用正则表达式。 – PhilMasterG