7

我维护了一个以 HTML 格式保存富文本消息的公告板。现在我需要将所有这些消息迁移到需要 BBCode 表示 HTML 的 Joomla Kunena 公告板中。

是否有任何库可以将 HTML 干净地转换为 BBCode。有一堆脚本用于 BBCode 到 HTML,但反之则不然。

谢谢...

4

2 回答 2

7

文本输出模式下使用 XSLT 应该是可行的:

<xsl:output method="text">
…
<xsl:template match="b|strong">[b]<xsl:apply-templates/>[/b]</xsl:template>
<xsl:template match="br">&#10;</xsl:template>
<xsl:template match="p">&#10;<xsl:apply-templates/>&#10;</xsl:template>
<xsl:template match="a">[url="<xls:value-of select="@href"/>"]<xsl:apply-templates/>[/url]</xsl:template>
<xsl:template match="text()"><x:value-of select="normalize-space(.)"/></xsl:template>

到那里解析 HTML并使用内置的 XSLT 处理器

于 2010-12-16T14:58:03.447 回答
0

我建议您使用正则表达式转换<b>[b]标签。这应该不难,因为您需要做的就是获取 HTML 并将其输入到 php 脚本中,该脚本可以将其保存在某种文件中,您可以将其保存在新论坛中。

希望对您有所帮助, RayQuang

于 2010-12-19T07:33:50.967 回答