diff --git a/lib/cubic/router.rb b/lib/cubic/router.rb
index <HASH>..<HASH> 100644
--- a/lib/cubic/router.rb
+++ b/lib/cubic/router.rb
@@ -60,6 +60,10 @@ module Cubic
       # but allows the url to fit into a 'variable route' if
       # one is found that matches the url pattern.
       def variable_route?(route, url)
+        if route.is_a?(Regexp)
+          return route_matches_regexp?(route, url)
+        end
+        
         route = route.split('/').reject(&:empty?)
         url   = url.split('/').reject(&:empty?)
 
@@ -70,6 +74,11 @@ module Cubic
         after.include?(false) ? false : true
       end
 
+      # Checks if url fits regular expression defined in route.
+      def route_matches_regexp?(route, url)
+        route === url
+      end
+
       # Checks if route can be turned into a variable.
       def route_parser(route, url)
         if route.include?(':')
Added support for routes using regular expressions