【问题标题】:VB.net/C# Datatable.Select with special characters (brackets)VB.net/C# Datatable.Select 带特殊字符(括号)
【发布时间】:2020-02-09 15:58:35
【问题描述】:

我有一个 vb.net 项目,其中有一个数据集,其中一些单元格带有像“JB-Y[ST]Y”这样的字符串。我的问题是你不能使用 datatable.select("Column like 'JB-Y[ST]Y'") 因为括号(选择认为这是一个模式,但我需要一个完全匹配)。有人对这个话题有想法吗?我找不到解决方案...谢谢!

【问题讨论】:

  • 这里可能需要正则表达式。
  • 在正则表达式中,括号也有同样的问题...

标签: vb.net select datatable


【解决方案1】:

我找不到使用 Regex.Replace 的解决方案,所以我有一个像这样的蛮力解决方案

Public Function ReplaceBrackets(search as String) As String
    Dim sb As StringBuilder = New StringBuilder()
    For Each c In search
        If c = "[" Then
            sb.Append("[[]")
        Else if c = "]" Then
            sb.Append("[]]")
        Else
            sb.Append(c)
        End If
    Next
    return sb.ToString()
End Function

您可以像这样在 Select 语句中调用它

datatable.Select("Column like '" & ReplaceBrackets(search) & "'") 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 2015-02-10
    • 2013-10-21
    • 1970-01-01
    • 2017-08-22
    • 2012-04-22
    • 2019-07-22
    相关资源
    最近更新 更多