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