があるので、セット検索の設定ms office(2003年)以外の英語charectars
-
21-09-2019 - |
質問
がないとは言い表計算シートやテーブルのMSアクセスを含む非英数字(diacritics)など à, á, â, ã, ä, å, æ, ç, è, é, ê, ë
このシステムの使用による英語スピーカーにおいては、エンドユーザーが検索のための価値観できないかどうかを明らかにされていませんの言葉や名前が入力された英語版のバージョン。
それは、 días
れものードデータベーとして días
または dias
. coñac
が記入され coñac
または conac
.実はその時にデータが入力されこのようにある。
の問題があるかどうかを設定この検索のオプション、内蔵のオフィス検索メカニズム(Ctrl+f)が días
時 dias
を提供しています。
しなければいい話を聞きするアプローチの必要がありません。
解決
GUIの検索ダイアログのマッチング動作のオフィスプロトコルを簡単に追加することのないカスタマイズできるようにしたがい靴、こちらかい問題解決:
最初が必要である。純コードを行うアクセントの大小文字の区別をしています。によって言語でのように、ここでも、VBとC#のサンプルです。この CompareInfo.IndexOf
を用いる方法CompareOptionsパラメータ設定 CompareOptions.IgnoreNonSpace
.このアクセントの大小文字の区別を検索します。
次に、する必要がありますコードからのアプリです。いプラグコードにより異なるアプリケーション例えば、ブログの投稿を示していますから Excel や アクセス.
その後する必要がありまwrapこれらの要請は周辺のコードおよびUIるシミュレーションの検索や取り外して交換できます。この再るかということは、用意するアプリです。例えば、Excelきすることによって、すべての細胞は、現在のワークシート、試合ご利用コードです。
最後に、またマップコードをツールバーボタンまたはその他のわかりやすく伝えるためのコードメソッドが呼び出されます。
とにかく、これは十分な情報を効果を得る作業を支援します。このコアです。ネコのいずれかVBやC#なアクセントの大小文字の区別を試
VB
Module Module1
Sub Main()
' returns: 3
Dim pos As Integer = FindIgnoreDiacritics("àcçëñt-énäblêd", "en")
End Sub
Function FindIgnoreDiacritics(ByVal lookIn As String, ByVal lookFor As String) As Integer
FindIgnoreDiacritics = System.Globalization.CultureInfo.InvariantCulture.CompareInfo.IndexOf(lookIn, lookFor, System.Globalization.CompareOptions.IgnoreNonSpace Or System.Globalization.CompareOptions.IgnoreCase)
End Function
End Module
C#
class Program
{
static void Main(string[] args)
{
// returns: 3
int pos = FindIgnoreDiacritics("àcçëñt-énäblêd", "en");
}
static int FindIgnoreDiacritics(string lookIn, string lookFor)
{
return System.Globalization.CultureInfo.InvariantCulture.CompareInfo.IndexOf(lookIn, lookFor,
System.Globalization.CompareOptions.IgnoreNonSpace | System.Globalization.CompareOptions.IgnoreCase);
}
}