How to convert HTML to BBCode

2019-01-12 01:04发布

I maintain a bulletin board that saves rich text messages in HTML. Now I need to migrate all those messages into Joomla Kunena bulletin board that requires BBCode representation of HTML.

Is there any library to convert HTML to BBCode cleanly. There are bunch of scripts out there for BBCode to HTML but not the other way around.

Thanks...

标签: php html bbcode
2条回答
太酷不给撩
2楼-- · 2019-01-12 01:28

I would recommend that you use regular expressions to convert <b> to [b] tags. This shouldn't be that hard, as all you would need to to is get the HTML and feed it in to a php script that could save it in some kind of file that you can save in your new forum.

Hope that helps, RayQuang

查看更多
Juvenile、少年°
3楼-- · 2019-01-12 01:34

It should be doable with XSLT in text output mode:

<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>

To get there parse HTML and use built-in XSLT processor.

查看更多
登录 后发表回答