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服务器版本
答案 0 :(得分:0)
实际上,您的$SearchKeyword1
已经检查过,因为它是要查找的非常特定的字符串。但是,如果您怀疑其他文本介于版本号11.2
和文本SQL Server Version Available
之间,则可以使用以下内容:
$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)'
并从中得出$matches['major']
和$matches['minor']
值中使用的版本。
希望有帮助。
顺便说一句,由于您对正则表达式非常感兴趣(看到这不是您对正则表达式的第一个问题),请尝试阅读一些教程。我在这里Regular Expressions: The Complete Tutorial
找到了一个很好的免费下载版本