0

我有一组带有嵌套[quote]标签的字符串,格式如下:

[quote name="John"]Some text. [quote name="Piter"]Inner quote.[/quote][/quote]

如您所见,它不像普通的 BBCode。gsub所以我在 Ruby 中找不到合适的正则表达式来将它们转换为这样的字符串:

<blockquote>
  <p>Some text. 

    <blockquote>
      <p>Inner quote.</p>
      <small>Piter</small>
    </blockquote>
  </p>
  <small>John</small>
</blockquote>

有人可以帮我解决这样的正则表达式吗?

4

1 回答 1

0

我很确定正则表达式根本无法应对嵌套。您可以做的是使其进行最小匹配(例如仅内部引用级别),替换它们,然后只要您有更多匹配项就重复。一旦您替换了一个级别,它将只是 HTML,因此将不再匹配正则表达式。

于 2013-05-01T08:42:52.843 回答