【问题标题】:Powershell -like expression from a SQL LIKE expression来自 SQL LIKE 表达式的类似 Powershell 的表达式
【发布时间】:2010-08-04 16:38:13
【问题描述】:

我的数据库中有一个表,其中包含一些用于 SQL 中的 LIKE 表达式的列。我正在处理的进程使用这些表达式从处理中排除某些 SQL 对象。

我现在将类似的代码放在 Powershell 中,但我想保持列的一致性。我将需要按照以下方式做一些事情:

where {$someVariable -like $myColumnData}

有什么方法可以将 SQL LIKE 表达式更改为类似 Powershell 的表达式?我也许可以自己写,但这似乎很棘手且容易出错,所以如果有人已经完成了这项工作,那就太好了。

例如,我希望能够进行如下转换:

%some string%    -->    *some string*
[0-9]blah%       -->    <I don't know what would go here>blah%

作为一个附带问题,类似 Powershell 是否允许任何标准的正则表达式,还是仅限于?和 * 通配符?

谢谢!

【问题讨论】:

  • -like 仅限于 *?。如果您需要正则表达式支持,可以使用-match

标签: sql regex powershell sql-like


【解决方案1】:

都是一样的。看看这里,powershell 的通配符: http://msdn.microsoft.com/en-us/library/aa717088(VS.85).aspx

【讨论】:

  • 我在链接页面上看不到任何允许使用 % 作为通配符的内容。我会尝试测试它。
  • 你做了 %some string% -> some string,所以我以为你已经有了那个。 [0-9]废话*
  • 所以看起来“[]”被处理了。不过,转义字符仍然可能是个问题。
猜你喜欢
  • 2013-08-18
  • 1970-01-01
  • 2017-07-13
  • 2023-03-27
  • 1970-01-01
  • 2011-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多