2013-02-21 96 views
1

如何使用Textile標記清除字符串以獲取純文本?在C#中?將紡織品轉換爲純文本

例如,串

Hello! How *do you do* ? 
Y = 3 * X 

..will被轉換成:

Hello! How do you do ? 
Y = 3 * X 

我需要任何紡織串,哪裏可以找到紡織語法任何標記轉換(http://en.wikipedia.org/wiki/Textile_(markup_language)) 。 字符「」只有一個。還有「 *」,「#」,「*#」,「_」,「|」,「h1。」,「h2。」等等。

暫時解決了問題轉換紡織字符串爲HTML,然後HTML到純文本。但是壞的不好不好的解決辦法

+0

怎麼樣了'Y = 3 * X'? – spajce 2013-02-21 12:10:36

+0

這是一個示例文本。第一行使用「*」將字符串格式化爲「strong」;第二行在數學運算中使用相同的字符。 – riofly 2013-02-22 14:39:17

+0

繼承人你的指導'if(row%2){} else {}' – spajce 2013-02-23 03:39:30

回答

0

您可以使用Textile.NET http://textilenet.codeplex.com/這是.NET

一個texttile格式化
+0

是的,我使用它。但是,你現在如何使用Textile.NET將紡織品轉換爲純文本? – riofly 2013-02-22 15:12:02

+0

將它轉換爲html然後轉換爲文本,這就是我最終做的。 – animaonline 2013-02-22 15:13:20

0
Regex.Replace(str, @"\*(.+)\*", @"$1") 
+0

好的,謝謝,但我需要轉換任何紡織字符串,在那裏我可以找到紡織語法的任何標記(http://en.wikipedia.org/wiki/Textile_(markup_language))。字符「*」只有一個。還有「**」,「#」,「*#」,「_」,「|」,「h1。」,「h2。」等等。 我暫時解決了將Textile字符串轉換爲HTML,然後將HTML轉換爲純文本的問題。但它不好。 – riofly 2013-02-22 14:41:15

0

林沒有真正的正則表達式大師這樣的人也許可以做得更好。但..

string result = Regex.Replace(str, "(?<=[A-Za-z])\\*|\\*(?=[A-Za-z])", ""); 

這將取代任何*由-Z preceeded或*後跟一個-Z以 「」