我可以找到围绕一条线而不是围绕和替换的例子,而且我对Regex来说有点新鲜。
我正在努力减轻我的降价,因此我不需要添加html只是为了让它以图片为中心。
使用pandoc,我显然需要使用DIV标签进行环绕和图像处理,以使其居中,正确对齐或任何其他标记。
我不想每次都输入,而是想用红宝石脚本预处理我的降价,并为我添加红宝石加入DIV。
所以我可以输入:
center![](image.jpg)
然后运行一个ruby脚本,将其更改为
<div class="center">
![](image.jpg)
</div>
我希望正则表达式找到“中心!”并摆脱“中心”这个词,并用DIV标签包围其余部分。
我将如何做到这一点?
答案 0 :(得分:1)
使用gsub
的一个小例子:
s = "a\ncenter![](image.jpg)\nb\n"
puts s.gsub(/^center(.*)$/, "<div class=\"center\">\n\\1\n</div>")
结果是:
a
<div class="center">
![](image.jpg)
</div>
b
应该让你入门。 (.*)
会在中心后捕获内容,\\1
会将其添加回替换内容。在这个例子中,我假设该项目本身就在一条线上 - ^
表示一行的开始,$
表示一行的结束。如果不是这种情况,您需要确定正则表达式的唯一性,以便它不会替换文本中“中心”的任何随机使用。