ruby-on-rails - 使用带突出显示的正则表达式

标签 ruby-on-rails ruby regex

我试图突出显示 post.comment 中的所有行使用正则表达式以 $ 开头
<%= highlight(post.comment, /^\$.*$/) %>

但是这会返回错误 no implicit conversion of Regexp into String

我如何格式化它以匹配每个以 $ 开头的字符串?

$highlight test
test
$highlight test

最佳答案

假设 post.comment 是一个字符串,您的代码适用于 Rails 4.2 和 Ruby 2.2.5。

作为替代方案,您还可以使用 sub 尝试以下操作:

raw(post.comment.gsub(/^\$.*$/) { |item| "<mark>#{item}</mark>" })

关于ruby-on-rails - 使用带突出显示的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37234393/

相关文章:

ruby-on-rails - 动态计划在 resque fork 新流程时丢失

ruby-on-rails - 升级到 ruby​​ 2.3.0 NameError: uninitialized constant I18n::Config::Backend

ruby - 在 Windows 上安装 'rhc' Rubygems 时出错

mysql - 在数据库中加载新模式而不删除现有数据轨

正则表达式:清理 HTML

regex - 如何订购正则表达式替代品以获得最长匹配?

ruby-on-rails - 基于环境的 Capistrano deploy.rb 文件

ruby-on-rails - rails 找不到 rake gem

ruby-on-rails - 如何随机化 `ActiveRecord::Relation` 的数组元素位置?

javascript - 替换为正则表达式返回未定义