2013-03-06 98 views
0

我希望將降級樣式粗體/斜體之間的文本轉換爲html粗體/斜體。這裏有一個例子:將星號轉換爲粗體或斜體標籤

**Bold text** is bold, *italic* text is italicized. 

應該去:

<b>Bold text</b> is bold, <i>italic</i> text is italicized. 

我看着別處SO,但大多數問題建議解析庫。不過,我認爲使用庫將是不適合的原因如下:

  • 我試圖保持代碼庫儘可能小
  • 解析器將有太多的功能!
  • 我想讓它儘可能快&輕巧地

我應該如何去將這些標籤呢?

+2

解析一下吧?這不是非常困難。 – 323go 2013-03-06 17:33:13

回答

1

在過去,我嘗試過自己這樣做,正如你試圖手工烘烤解決方案一樣。一旦添加一兩個標記,您必須滿足的例外情況變得非常複雜。我最終以一種不那麼有效的方式重新發明了車輪。我選擇採用其中一個解析庫並且從不回頭。

解析器將有太多的功能!

您可以通過一些解析器來定義自己的標記語言。這是我選擇的。我在.Net中做過,所以我不能推薦Java版本。

我想讓它儘可能快&輕巧地

任何解析庫會比你自己更高效,除非你的數據進行解析的多MB的,我不認爲你」我會注意到很多不同。他們通常會花費更多的時間來提高效率,我可能會願意這樣做。

我知道這是不是一個「答案」正因爲如此,但是我希望我爲您節省一定的時間(和延緩白髮的發作),或者你指出正確的方向。

+0

我和你在一起。我試圖寫我自己的解析器,我已經看到了別人做到這一點。它們很少變得特別小,速度快或可讀。 – 2013-03-06 18:00:08