0

SQL Server BIDS(Business Intelligence Development Studio、VS2008)を使用してレポートを作成していますが、フィールド値から句読点を削除する必要があります。

たとえば、フィールド値が「Hello、World!」の場合、レポートに「HelloWorld」として値を表示する必要があります。この例では、ネストされた置換関数を使用するのは簡単だと思います。

=Replace(Replace(Fields!Description.Value,",",""),"!","")

しかし、「、」と「!」以外のものを削除する必要がある場合、これはすぐに「醜い」になります。文字。つまり、要するに:

正規表現を使用してSQLServerBIDSレポートのフィールド値をフォーマットできますか?

答えが「いいえ」の場合、それは問題ありません。それを見つけるのに時間を無駄にすることはありません。ありがとう。

アップデート

式の式での正規表現の使用法(これは電話番号用ですが):

=System.Text.RegularExpressions.Regex.Replace(Fields!Phone.Value, "(\d{3})[ -.]*(\d{3})[ -.]*(\d{4})", "($1) $2-$3")
4

1 に答える 1

1

クライアント側で大量の行を処理するには、時間がかかる場合があります。そこで、Regex ロジックをサーバー側に移動することを提案します。

これにはCLR関数を使用できます。

ここで例を探してください: http://www.simple-talk.com/sql/t-sql-programming/clr-assembly-regex-functions-for-sql-server-by-example/

アップデート

クライアント側で処理する場合は、レポートで式 (正規表現を含む) を使用する方法を見てみましょう: http://msdn.microsoft.com/en-us/library/ms157328(v=SQL.100).aspx

于 2011-07-27T10:48:33.547 に答える