gpt4 book ai didi

ruby - 包含文件的预处理器

转载 作者:太空宇宙 更新时间:2023-11-03 18:27:34 25 4
gpt4 key购买 nike

在 Ruby 中实现文件包含的简单方法是什么,例如如果文本文件包含 {{{stuff.txt}}},则 stuff.txt 的内容包含在行内。我想也许是这样的:

cat prog | ruby -pe 'gsub /{{{.+}}}/, File.open("$0").read'

... 涉及 eval(),但无法使其正常工作。

最佳答案

s.gsub(/{{{(.+?)}}}/) { |m| File.read($1) }

几点:

  • .+ 和 .+? 之间有一个重要的区别。使用 .+,很容易制作吃掉太多字符的正则表达式。
  • 您需要使用 block 来计算替换(因为它是动态的)

关于ruby - 包含文件的预处理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8952486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com