From 2b617783ad37e1f008499ba8389f50d67e7b78b1 Mon Sep 17 00:00:00 2001
From: Jan Szumiec <jan.szumiec@gmail.com>
Date: Wed, 7 Aug 2013 13:14:28 +0100
Subject: excerpt() now accepts regular expression instances as phrases.

---
 actionview/lib/action_view/helpers/text_helper.rb | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

(limited to 'actionview/lib')

diff --git a/actionview/lib/action_view/helpers/text_helper.rb b/actionview/lib/action_view/helpers/text_helper.rb
index 7cfbca5b6f..2109b2724c 100644
--- a/actionview/lib/action_view/helpers/text_helper.rb
+++ b/actionview/lib/action_view/helpers/text_helper.rb
@@ -155,9 +155,13 @@ module ActionView
       def excerpt(text, phrase, options = {})
         return unless text && phrase
 
-        separator = options[:separator] || ''
-        phrase    = Regexp.escape(phrase)
-        regex     = /#{phrase}/i
+        separator = options.fetch(:separator, nil) || ""
+        if Regexp === phrase
+          regex = phrase
+        else
+          phrase    = Regexp.escape(phrase)
+          regex     = /#{phrase}/i
+        end
 
         return unless matches = text.match(regex)
         phrase = matches[0]
-- 
cgit v1.2.3