例如,我有一个文本块,其中包含字符串“{image=filename.jpg}”的几个实例,其中 filename.jpg 可以是任何文件名,我想用图像标签替换 {} 中的所有内容使用文件名找到图像的位置,例如 Model.find_by_attachment_file_name("filename.jpg")。
是否有可能做到这一点?
编辑:
示例输入:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
{image=some_file.png}
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
期望的输出:
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
<img src="/system/attachments/model/some_file.png">
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
通过使用可以找到所需输出的图像标签的 src 属性Model.find_by_model_attachment_file_name("some_file.png").model_attachment.url
也就是说,类似:
string.gsub(/{image=.*}/, "<image src=#{ContentAttachment.find_by_content_image_file_name([???]).content_image.url(:main)}")
其中 [???] 被替换为对被 gsub 替换的内容的引用。
或者,如何在 gsub 的第二个参数中引用第一个参数?