Rails - 如何将正则表达式设置为方法



我有一个正则表达式,我想用于字数统计和验证。但是,如果我决定更改我正在使用的正则表达式,我不想进入每个模型和控制器。有没有办法创建一个定义正则表达式的帮助程序方法?

这是我尝试过的,但它不起作用:

module ApplicationHelper
  def word_count(content_text)
    content_text.scan(scan_regex).size
  end
  def scan_regex
    return "/b(([a-zA-Z’'-]))+((?![^<>]*>)+(?![^&;]*;))b/"
  end
end

您可以从正则表达式中删除"/",然后将它们添加到扫描中:

module ApplicationHelper
  def word_count(content_text)
    content_text.scan(/#{scan_regex}/).size
  end
  def scan_regex
    return "b(([a-zA-Z’'-]))+((?![^<>]*>)+(?![^&;]*;))b"
  end
end

最新更新