受信任的Regex在Powershell中不起作用,为什么

时间:2019-03-06 13:33:43

标签: xml powershell

我遇到一个受信任的正则表达式问题,该正则表达式在所有该死的情况下都无法正常工作,但Powershell Select-String ...

来自xml的行是:

<document date="2019-03-31" level="0270" name="mpeMasterTablesExport">

并且我之前使用以下正则表达式为我可靠地选择了date =“ xxxx-xx-xx”:

\bdate.(["])(?:(?=(\\?))\2.)*?\1

到目前为止,这在每个应用程序(例如010编辑器)中都能正常运行,但是在我的powershell脚本中,它将在上面输出整行...

$xml = Get-Content $p -First 3
$date = $xml | Select-String -Pattern '\bdate.(["])(?:(?=(\\?))\2.)*?\1'

我必须以这种方式使用它,因为我正在使用的xml是巨大的,并且将其全部加载到内存中是不可接受的,因为我总是需要前三行的信息...有人可以给我正确的指针吗?我在哪里做错了?

0 个答案:

没有答案