PowerShell中的选择弦.解析括号



我将其存储在下面显示的文本文件中:

Java 8更新111Java 8更新111(64位)Java 8更新131Java 8更新151Java 8更新152

我正在使用Powershell对这些信息做点事,但在第一个障碍上挣扎。我正在使用Select-String匹配模式,并且它不起作用。

Select-String "\serverJavaVersions.txt" -Pattern "Java 8 Update 111 (64-bit)"

似乎不起作用,但下面使两者都带回。

Select-String "\serverJavaVersions.txt" -Pattern "Java 8 Update 111"

有人有什么想法,为什么有括号的人不起作用?是解析问题吗?我真的需要能够将(64-bit)放在另一个之前,然后分别采取行动。

您必须逃脱特殊的正则角色。在您的情况下。

Select-String '\serverJavaVersions.txt' -pattern "Java 8 Update 111 (64-bit)"

https://www.regular-expressions.info/characters.html

另外,请使用-SimpleMatch关闭正则匹配:

Select-String '\serverJavaVersions.txt' -Pattern 'Java 8 Update 111 (64-bit)' -SimpleMatch

https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-5.1

作为替代选项,如果您不需要使用匹配的正则表达式,则可以使用-SimpleMatch参数:

Select-String '\serverJavaVersions.txt' -SimpleMatch "Java 8 Update 111 (64-bit)"

您就不需要做任何正则逃脱。

相关内容

  • 没有找到相关文章

最新更新