Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8088

Профиль | Отправить PM | Цитировать


Цитата YuS_2:
В смысле это только направление, а нужен законченный код, который делает то же самое, что и код на powershell... »
Зачем? В смысле — зачем Compare-Object для сравнения на равенство двух строк:
Цитата YuS_2:
результат замены сравниваем уже со значением этой переменной, а по результатам сравнения уже предпринимаем какие-либо действия.
типа:
Код: Выделить весь код
$a = '1 2 3 4 5'
# Есть замена
diff $a ($a -replace '3 ') -incl
# Нет изменений
diff $a ($a -replace '8 ') -incl
»
?

Вот простая иллюстрация:
Код: Выделить весь код
$a = "12345"
$b = "3"

(Measure-Command {
    for($i = 0; $i -le 1000000; $i++) {
        [void](Compare-Object -ReferenceObject $a -DifferenceObject $b -IncludeEqual)
    }
}).TotalSeconds

(Measure-Command {
    for($i = 0; $i -le 1000000; $i++) {
        [void]($a -eq $b)
    }
}).TotalSeconds
64.6133665
2.0294291
Возможно, со строками другой длины и результат будет иной. Но так или иначе, Compare-Object вместо простого сравнения — не лучший выбор.

Отправлено: 22:11, 16-05-2019 | #29