XMLファイルにワイルドカードベースのパターンのリストがあります。入力文字列がXML文書にあるパターンと一致する場合は、特定のアクションが実行されます。C#でのワイルドカード検索
ここではhttp://www.codeproject.com/KB/recipes/wildcardtoregex.aspxというアプローチを見つけましたが、その場合、避けようとしているXMLのすべてのエントリに対してRegExオブジェクトを作成する必要があります。
私に教えてください。ネット
XMLファイルにワイルドカードベースのパターンのリストがあります。入力文字列がXML文書にあるパターンと一致する場合は、特定のアクションが実行されます。C#でのワイルドカード検索
ここではhttp://www.codeproject.com/KB/recipes/wildcardtoregex.aspxというアプローチを見つけましたが、その場合、避けようとしているXMLのすべてのエントリに対してRegExオブジェクトを作成する必要があります。
私に教えてください。ネット
文書の各パターンを入力文字列と照合するために評価する場合は、言及したように、各パターンのRegExを作成する必要があります。ショートカットはありません。
私はあなたがperfomanceについて心配していると思います。それが問題だと確信していますか?そうであれば、別のアプローチを見つけようとするべきです。
多くの入力文字列に一致しますか?その場合は、毎回作成するのではなく、あなたのRegExesを(リストのように)保持する必要があります。 RegExesは再利用できます。
そうしないと、提案したアプローチに大きな問題はありません。
でワイルドカード検索を行うに任意のより良い方法は、それは私の就寝時の過去の方法ですので、私はこの答えに風変わりに聞こえるかもしれあります。
あなたには間違ったやり方が設定されているように思えます。入力文字列をパターンのリストと照合しています。論理的には、リスト内の各パターンを入力文字列と照合して一致を判定する必要があります。 XMLファイルを解析することによってRegexパターンの配列を構築するのは簡単です。次に、配列を繰り返し処理して、入力文字列に対して各正規表現をマッチさせることができます。
さらに、なぜワイルドカードが必要なのですか?ワイルドカードはRegexのサブセットと見なすことができるので、Regexオブジェクト内にカプセル化されたワイルドカードマッチングのすべての機能を既に持っています。
つまり、入力/ワイルドカードの種類に関するより多くのデータが、あなたの質問を理解するのに役立つかもしれません。
例?私はあなたが扱っているワイルドカード/入力のタイプを視覚化するのが難しいと思っています。 – Cerebrus