我有一個路由定義是這樣的追趕code
PARAM:ExpressJS路線的正則表達式:如何匹配一個參數去一切,除了一個路由
app.get('/:code([a-zA-Z]{3})', codeHandler);
這其中有三個字母長的所有代碼匹配,並且它是工作正常。但我想更改它以匹配除一個之外的所有代碼。例如,可以說我想排除「cct」。我嘗試使用排除模式,從路線excude「CCT」由 修改上述匹配,像這樣:
app.get('/:code((?!cct)[a-zA-Z]{3})', codeHandler);
但現在這條路犯規匹配任何內容。即使以前被捕獲的有效代碼現在也不匹配。我不知道我做錯了什麼。
一個好處,我從原來的路線是它觸發了我的'app.param'處理器,其處理PARAM'得到:code',從DB擡頭數據和分配,要'req'目的。有沒有辦法仍然觸發註冊'參數'處理程序。 – codneto