投稿者 YUU  (社会人) 投稿日時 2015/12/24 15:30:05
返信遅くなりましてすみません。

>例示として、あえて表記を揺らしているのだとは思いますが、
あくまで例題として挙げさせていただきましたが不十分でした。

>完全一致なのか部分一致なのか、質問文からは読み取れませんでした。
これも不十分ですみません。自分のコードからサンプル用に出力したため一部不明瞭な点がございます。
今回の例としては完全一致が正であるためRegexは不正ですね。

>コード外に変換表を配置するとか。(データベース、リソース、App.Config、XML ファイル等々)
データベースもしくはリソースファイルあたりでしょうか。クラス化程度に考えておりました。

今回提示させていただくサンプルも適切ではないかと思いますが上記の点を踏まえ修正してみました。

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click

        Dim ct = New Table
        Dim text As String = "センチメートル"
        Dim matchedValue As String = If(ct.dic.FirstOrDefault(Function(k) k.Key = text).Value, "")

        Console.WriteLine("Found value= {0}", matchedValue)

'Found value= ㎝(出力結果)

    End Sub

Public Class Table

    Public dic As Dictionary(Of String, String) = New Dictionary(Of String, String)() From {
                                                {New String("ナノメートル"), "nm"},
                                                {New String("センチメートル"), "㎝"},
                                                {New String("マイクロメートル"), "μm"},
                                                {New String("ミリメートル"), "mm"}}


End Class

不十分な点、修正点等ございましたらご指摘いただけると幸いです。

よろしくお願い致します。