Description -as\r\n [code]a = b+ 4\r\nc= a +j\r\n\r\n[/code]\r\nagain text\r\n[code]a = c + 4\r\n[/code]"
我需要的输出是将[code]中包含的文本传递给coderay进行格式化。
或者你可以说类似于stackoverflow,其中我们可以看到代码部分和文本部分分开。如果代码块在一行中,我正在关注Separate Code blocks form text。
答案 0 :(得分:1)
您可以使用它来避免换行问题:
str.gsub(/\[code\]((?>[^\[]++|\[(?!\/code]))*+)\[\/code\]/) do |match, replace|
...
[code]
标记之间的内容位于第一个捕获组中。