ruby - 正则表达式,如何在 ruby​​ 中查找文件?

标签 ruby regex

我有两个 Ruby 文件:

db/migrate/20120920180336_create_admin_pages.rb
db/migrate/20120920150716_devise_create_users.rb

此文件中有一个常量变量:_create_admin_pages.rb

如何在文件中找到它并使以下命令正常工作?

gsub_file "db/migrate/*_create_admin_pages.rb", "t.boolean :published", "t.boolean :published, :default => false"

最佳答案

ruby -pe 'gsub("t.boolean :published", "t.boolean :published, :default => false")' < db/migrate/*_create_admin_pages.rb

Ruby 可以使用多个选项运行。这里的 -pe 选项(实际上是两个选项)让 Ruby 执行这个循环:

  • 直到不再输入:
  • 读取一行输入,
  • -pe 之后的字符串作为代码运行,
  • 打印结果。

全部使用隐式变量$_,最后读取的行。

关于ruby - 正则表达式,如何在 ruby​​ 中查找文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12518865/

相关文章:

ruby - 从另一个类访问 Sinatra 作用域

ruby - 交集完成后,顺序是否保留在数组中?

mysql - 在 ruby​​ 中连接到外部 MySQL。错误 1130 (HY000)

java - 如何使用正则表达式在最后一次出现破折号后提取文本?

regex - Notepad++ 正则表达式 第二场比赛

mysql - 在 Ruby 查询中使用正则表达式

ruby-on-rails - View 仅显示标题: and Text: but does not seem to fetch data from database

ruby - 为什么只有有限数量的正则表达式捕获存储在 `global_variables` 中?

python - 简单的 python 正则表达式,冒号后匹配

python - 正则表达式匹配以句点结尾的段落