2013-05-02 2 views
1

Я не думаю, что для этого могу использовать стандартный командлет. У меня есть следующая строка Резервное копирование задания НЕОБХОДИМЫЕ СТРОКИ ЗДЕСЬ завершена успешноPowershell извлекает текст из строки с неизвестной длиной

Мне нужно извлечь НЕОБХОДИМОЙ STRING ЗДЕСЬ, которая может быть любой длины и любого количества слов. Текст слева всегда будет заданием резервного копирования, а текст справа либо будет успешно завершен, либо с ошибками.

Как бы я это сделал?

ответ

2

Здесь вы идете, это использует $ matches automatic variable.

$regEx = "Backup Job (.*)(completed successfully|failed with errors)" 
$good = "Backup Job INDETERMINABLE STRING HERE completed successfully" 
$bad = "Backup Job INDETERMINABLE STRING HERE failed with errors" 

if ($good -match $regEx) 
{ 
    $matches[1] 
} 
if ($bad -match $regEx) 
{ 
    $matches[1] 
} 
Смежные вопросы