2011-02-26 14 views
2

我正在研究實現雙向文本解析框架的可行性,以允許使用Markdown,BBCode,DocuWiki等常見範例的組合來處理格式化文本。實際上,這意味着每個實施必須能夠翻譯成通用格式。這可能是HTML,但更現實的是一種中間(更容易分析)的格式,如XML或YAML。雙向文本分析建議

這可能會利用標記器將文檔分解爲相關的組件。這聽起來像是最好的方法,你是否可以預見任何重大的障礙?

最後,是否有人知道現有的實現(或嘗試)。

請注意,這是專注於PHP,但其他解決方案,歡迎。

回答

1

查看HTML解析器的源代碼,例如Nokogiri,Hpricot,BeautifulSoup等。他們會爲您提供構建結構化文本解析器的一些建議。

可能不需要轉換爲中間格式,因爲您的標記化對象樹將成爲構建所有輸出格式所需的全部內容。

如果您有具體的實施問題,也應該發佈它們。

+0

謝謝。中間格式的主要原因是原始HTML條目也是一個選項。由於我不打算嘗試在這些選項和任何* HTML之間進行交換,因此在某些時候強制所有內容進入同一(限制)直外套似乎是明智之舉。 – Hamish 2011-02-28 09:16:49