当我看到一些与我的模式匹配的文本时,我想使用 RedCloth 创建一个指向外部站点的链接,该链接有一个查询链接。
如果我有类似的东西:
Text 123 1234 12345
当我看到我想将其替换为:
"Text 123 1234 12345":http://site.com/query?value=Text%20123%201234%2012345
如果我让它保留空间,RedCloth 将不会正确地将其视为链接。
这是我所在的位置:
s = "this is a string which has Text 123 1234 12345 "
s = s.s.gsub(/(Text \d+ \d+ \d+)/,'"\1":http://site.com/query?value=\1'
=> "Text 123 1234 12345":http://site.com/query?value=Text 123 1234 12345"
问题是 RedCloth 在以下情况下停止解析:
"Text 123 1234 12345":http://site.com/query?value=Text
所以我真的需要:
"Text 123 1234 12345":http://site.com/query?value=Text%20123%201234%2012345"
有没有办法可以\1
在 的右侧弄乱gsub
,这样我就可以获得以下内容?如果没有,最好的方法是什么?