Dim findChar As String() = {vbTab, vbCr, vbLf, "~", "(", ")", "#", "\", "/", "=", ">", "<", "+", "-", "*", "%", "&", "|", "^", "'", "[", "]", """"} Dim lstPattern As New List(Of String) For Each s As String In findChar lstPattern.Add(System.Text.RegularExpressions.Regex.Escape(s)) Next Dim sPattern As String = String.Join("|", lstPattern.ToArray) Dim sInput As String = Me.TextBox1.Text sInput = System.Text.RegularExpressions.Regex.Replace(sInput, sPattern, "[$&]") Dim tbl As DataTable = ごにょごにょ Dim viw As New DataView(tbl) viw.RowFilter = "Column1 Like '%" & sInput & "%'"
.NET RowFilterでEvaluateExceptionが発生した場合のエスケープ
DataViewのRowFilterを利用してデータを抽出するとき
特殊文字をエスケープしないとEvaluateExceptionが発生します。
エスケープは文字を角かっこ[]で囲みます。
登録:
コメントの投稿 (Atom)
-
DataTableから重複を除くには と DataTableの集約計算を行う(Compute) を利用して、DataTableをグループ化し集計を行います。 以下のようなデータが入ったDataTableから、Field1とField2で重複を取り除き集計をおこないます。...
-
前回「 PLSQL SELECTの結果を取得する ~取得結果が1行の場合~ 」に続き 今回はSELECTの結果が複数行の場合です。 SELECTの結果が複数行の場合はカーソルを使用します。 カーソルとは SELECTの結果セットに対して、1行ずつデータを取り出し、順次...
-
datatableの集約計算を行うにはDataTable.Compute メソッドを使用します。 Dim As Object '最大値を求める value = datatable.Compute("Max(集計列名)", Nothing) &...
0 件のコメント:
コメントを投稿