Powershell 从word文档中提取节号

Powershell 从word文档中提取节号,powershell,Powershell,Word文档包含以下部分:11.2 SQL Server版本可用 我必须在word文档中搜索此文件 11.2是节号,可用的SQL Server版本是页眉 $SearchKeyword1 = '11.2 SQL Server Version Available' 'Get-Content $SourceFile | select-string -pattern $SearchKeyword1 我们如何使用正则表达式提到这个搜索关键字。。。因此,它会检查第行中是否有11.2和sql server

Word文档包含以下部分:11.2 SQL Server版本可用

我必须在word文档中搜索此文件

11.2是节号,可用的SQL Server版本是页眉

$SearchKeyword1 = '11.2 SQL Server Version Available'

'Get-Content $SourceFile | select-string -pattern $SearchKeyword1

我们如何使用正则表达式提到这个搜索关键字。。。因此,它会检查第行中是否有11.2和sql server版本。实际上,您的
$SearchKeyword1
已经检查过了,因为它是一个非常特定的字符串。但是,如果您怀疑其他文本在版本号
11.2
和可用的SQL Server版本
之间,您可以使用以下内容:

$SearchKeyword1 = '(?:11\.2).*(?:SQL Server Version Available)'
当然,它会搜索
11.2
的文本版本。如果版本号也可以是,比如说
10.7
,您可以执行更通用的搜索,如

$SearchKeyword1 = '(?:\d{2}\.\d).*(?:SQL Server Version Available)'
如果您想检查文本中的任何版本,您可以这样做

$SearchKeyword1 = '(?<major>\d+)\.(?<minor>\d+).*(?:SQL Server Version Available)'
$SearchKeyword1='(?\d+)\(?\d+).*(?\d+)。((?\d+).*(:SQL Server版本可用)
从中找出
$matches['major']
$matches['minor']
值中使用的版本

希望有帮助

顺便说一句,既然你对正则表达式非常感兴趣(这不是你的第一个问题),那么试着阅读一些教程。我在这里找到了一个很好的免费下载的