2012-11-09 38 views
0

有沒有一種工具,如果你給它一組已被轉換爲另一種模式的字符串,它可以告訴你如何到達每個模式。舉個例子,我有字符串:從一種模式到另一種模式的工具?

20G-34-41-01-00004.G-0020.01並已轉化爲20G344101 4G 2001

,我想知道如何從一個到另一個,反之亦然得到。有更多的模式,所以這就是爲什麼我想知道是否有一個工具。

+4

通常的做法是使用_regular expression_或_regex_。但你知道他們對此有何評論?起初你有一個問題,那麼你使用正則表達式,現在你有兩個問題。 –

+0

有多少種圖案?模式有沒有模式? – weston

+0

是的,有一個模式的模式。 – Xaisoft

回答

0

如果你專門使用字符串,在我看來,創建一個.ConvertTo(模式)擴展方法是要走的路。

public enum ConversionTypesEnum 
{ 
    LongDate, 
    ShortDate, 
    FatDate, 
    SkinnyDate 
} 

public static string ConvertTo(this string stringtoConvert, ConversionTypesEnum type) 
{ 
    ... 
} 
+0

我的問題是實際的轉換。 – Xaisoft

0

聽起來像你在問機器學習。關於mathoverflow.com有簡短的討論。

在機器學習中,這是一種常見情況(給定這些函數的有限多個例子,在其餘無限多的情況下「學習」函數)。你應該看機器學習文獻,因爲這是你正在做的。例如,您可以問,與給定測試用例匹配的最簡單的正則表達式是什麼?

... Henning Fernau,Algorithms for Learning Regular Expressions(擴展摘要)。

+0

這裏的問題是'ApplyPattern'就是我想要找到的。 – Xaisoft

+0

抱歉,@ Xaisoft,我誤解了你的問題。我以爲你有一套有限的轉換,你試圖選擇哪一個被應用。這個問題比較困難,如果不以某種方式限制可能的模式,這在理論上可能是不可能的。我已經替換了我的答案。 –