Powershell Select-String для включения подстановочного знака - PullRequest
0 голосов
/ 28 мая 2019

Мне нужно использовать Select-String, чтобы найти что-то - известную строку символов, за которой следует либо / или $, за которым следует другая известная строка символов.

Итак, предположим, что буквальная строка 1 равна X, а буквальная строка 2 равна Y, как мне найти строку X/Y или X$Y в powershell?

Ответы [ 2 ]

0 голосов
/ 29 мая 2019

Я бы добавил RegEx, даже если строки здесь простые:

## Q:\Test\2019\05\28\SO_56349782.ps1

$String1 = [regex]::Escape("X")
$String2 = [regex]::Escape("Y")
$RegEx   = [regex]"$String1(\/|\$)$String2"

$Text = @'
foo X/Y 
foo X$Y baz
foo X/Y bar X$Y baz
'@ -split '\r?\n'

$Text | Select-String -Pattern $RegEx -AllMatches

($Text | Select-String -Pattern $RegEx -AllMatches).Matches.Value

Пример вывода:

foo X/Y
foo X$Y baz
foo X/Y bar X$Y baz

X/Y
X$Y
X/Y
X$Y
0 голосов
/ 28 мая 2019
PS C:\users\js> Echo a/b | Select-String a.b

a/b


PS C:\users\js> Echo 'a$b' | Select-String a.b

a$b
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...