CGI::Application::Dispatch::Regexp.3pm

Langue: en

Version: 2009-04-02 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

CGI::Application::Dispatch::Regexp - Dispatch requests to CGI::Application based objects using regular expressions

SYNOPSIS

     use CGI::Application::Dispatch::Regexp;
 
     CGI::Application::Dispatch::Regexp->dispatch(
             prefix  => 'MyApp',
             table   => [
                 ''                                    => { app => 'Welcome', rm => 'start' },
                 qr|/([^/]+)/?|                        => { names => ['app']                },
                 qr|/([^/]+)/([^/]+)/?|                => { names => [qw(app rm)]           },
                 qr|/([^/]+)/([^/]+)/page(\d+)\.html?| => { names => [qw(app rm page)]      },
             ],
     );
 
 

DESCRIPTION

CGI::Application::Dispatch uses its own syntax dispatch table. "CGI::Application::Dispatch::Regexp" allows to use flexible and powerful Perl regular expressions to transform a path into argument list.

DISPATCH TABLE

The dispatch table should contain list of regular expressions with hashref of corresponding parameters. Hash element 'names' is a list of names of regular expression groups. The default table looks like this:
         table       => [
             qr|/([^/]+)/?|          => { names => ['app']      },
             qr|/([^/]+)/([^/]+)/?|  => { names => [qw(app rm)] },
         ],
 
 

Here's an example of defining a custom 'page' parameter:

         qr|/([^/]+)/([^/]+)/page(\d+)\.html/?| => { names => [qw(app rm page)] },
 
 
Copyright Michael Peters and Mark Stosberg 2008, all rights reserved.

SEE ALSO

CGI::Application, CGI::Application::Dispatch