开发者

Regular Expressions in Python - match all that does not contain... (App Engine)

开发者 https://www.devze.com 2023-02-23 14:32 出处:网络
Just started using App Engine\'s webapp framework, but I can\'t figure out what\'s wrong with this: My URL structure is set up to where any pages are prefixed with /x/ . For example..

Just started using App Engine's webapp framework, but I can't figure out what's wrong with this:

My URL structure is set up to where any pages are prefixed with /x/ . For example..

http://site.com/x/my_account

http://site.com/x/profile

http://site.com/x/admin

etc etc....

Now I want to be able to match NOT prefixed with /x/ to be handled by another handler. This will be a user's page.

EX:

http://site.com/user1

http://site.com开发者_如何转开发/user2

Here's my WSGI Application

        application = webapp.WSGIApplication([
      ('/((?!/x/).)*$', Profile.ProfileMainHandler),
      ('/x', Misc.MainHandler),
      ('/x/', Misc.MainHandler),
      ('/x/videos', Videos.VideoHandler),
      ('/x/videos/add', Videos.VideoAddHandler),
              # etc etc, many more to list...

Why is this not working? The /x/etc handlers work fine, but instead of anything else going to Profile.ProfileMainHandler, it doesn't match anything.

As always thank you for your patience!


It should be like this:

'^/(?!x/|x$).*$'


URLs are matched in order, from first to last. Simply add a .* regular expression after all URL patterns that match /x.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号