2010-11-20 6 views
0

を書く、正規表現でのUnicodeおよびDB読書/おやすみ

私は現在、正規表現のマッチングに基づいてC#での人間の言語のための非常に単純な字句analiserに取り組んでいます、と私は現在、その正規表現をspecifingの問題に直面していますターゲット言語のすべての句読記号と一致させることができます。また、すべての種類の空白にも一致する別の句読記号に一致させることができます。スタックオーバーフローと別のサイトでここを検索したところ、正規表現\p{P}と句読点\p{Z}をそれぞれ使用することができ、テキストファイルから読み込むときに機能します。問題は、最終的なプログラムでは、SQLデータベースからレコードを読み取り、このレキシカルアナライザーを使用して処理する必要があり、DB内のレコードのエンコーディングがわからないということです。この状況でこれが問題になることはありますか?上記のRegexesは、エンコーディングに関係なく、入力のすべての句読点や空白文字にマッチできますか?

ありがとうございました。

+0

どのデータベースを使用していますか? – Amirshk

+0

SQL Server 2008. – Miguel

答えて

2

.NET Frameworkは、文字列をデータベースからUnicodeに変換します。それが正しく変換されるかどうかは、何かがデータベースのテキストエンコーディングの内容を伝えたかどうかによって異なります。しかし、あなたのRegexが見る文字列はUnicodeになります。

データベースアクセス層がテキストをデータベースレコードから正しく変換したと仮定すると、常にUnicodeなので、エンコードについて心配する必要はありません。

+0

ありがとうございます。Mischel。 – Miguel

関連する問題