
Я пытаюсь использовать следующее регулярное выражение:
(?<=----Old-------\n)(((.+\n)+)\n*?)(?=__________________________________________)
чтобы получить многострочные ставки
----Old-------
250096 - LT Security Role: Read Only, 250032 - Sales VIC3, 250083 -
Security Role: Base Security Role, 250080 - Security Role: Payment
Allocation, 250058 - Security Role: TFM Sales Consultant, 250103 - Web
Fleet SuperUser
Но select-string ничего не возвращает.
я использовалhttps://regex101.com/иhttps://www.regexpal.com/и Regex работает так, как и ожидалось.
не могли бы вы помочь?
$ModifyOldRegex = "(?<=----Old-------\n)(((.+\n)+)\n*?)(?=__________________________________________)"
$Description | Select-String -Pattern $ModifyOldRegex.matches.Value
решение1
Наконец я нашел проблему:
1- Используйте get-Content -Raw для работы \n // Я не уверен, почему
2- Изменил регулярное выражение на
"(?<=----Старый-------)((.+\n)+)(?=______________________________________)"