未結束我有兩個正則表達式(簡化爲相等)正則表達式命名組開始但
r'^(?P<slug>(^foo)[-\w]+)/$'
r'^(?P<slug>(^foo)[-\w]+)/$'
我向在第一添加排除到檢查結束,以便後者獲勝。
例如:
foobar/
應通過第一,從來沒有後者
我想foobar-my-string/
失敗的第一,但匹配後者
我已經試過@ sdanzig的回答是:
r'^(?P<slug>(^foo)[-\w]+(?!my-string$))/$'
r'^(?P<slug>(^foo)[-\w]+)/$'
但它不起作用我總是進入後者的字符串做或不以「my-s結束特林」
我也試了一下週圍的其他方法爲我的正則表達式求值上下,但它也不起作用:
r'^(?P<slug>(^foo)[-\w]+(my-string$))/$'
r'^(?P<slug>(^foo)[-\w]+(?!my-string$))/$'
我不明白。你說'foobar /'應該先通過,但'foobar-my-string /'不應該先通過。能夠清楚地解釋確切的要求嗎? –
我不希望以「my-string」結尾的字符串通過第一個,我犯了一個錯誤更新q – user2298943
你想要1個正則表達式還是2個?現在你已經刪除了'barfoo /'部分。這不是必需的嗎? –