Маршрут Backbone.js с использованием регулярных выражений - сопоставление URL, который не заканчивается данной строкой - PullRequest
1 голос
/ 03 апреля 2012

Мне нужно создать маршрут с помощью регулярного выражения, который соответствует URL, который не заканчивается определенным словом, скажем «отправить».Например -

/ login / submit ==> не соответствует
/ login / abcsubmit ==> не соответствует
/ abc / xyx => Соответствует

Ответы [ 2 ]

0 голосов
/ 03 апреля 2012

Я попытался предоставить регулярное выражение @Nestenius, которое он предоставил, и оно все еще совпадает с первыми двумя приведенными вами примерами URL.Причина в том, что регулярное выражение не было привязано к началу строки.

Вы все еще можете использовать его регулярное выражение, если добавите тег ^ в начало регулярного выражения следующим образом:

^((?!(.*?)/\w*submit).*)

Или вы можете использовать эту более короткую версию:

^(?!.*submit).*

Оба будут соответствовать любой строке, которая не содержит «submit».

0 голосов
/ 03 апреля 2012

Используйте это регулярное выражение:

((?! (. *?) / \ Ш * представить). *)

как объяснено в http://backbonejs.org/#Router-route

this.route (/ ^ ((?! (. *?) / \ W * submit). *) $ /, "FunctionName");

...