Я пытаюсь объединить HTODREDS из файлов .rtf, используя Powershell.Какой шаблон REGEX получит мне последнюю часть строки?
Вот формат: кучи CSS материала с последующей частью я хочу .....
{\rtf1\ansi {\fonttbl{\f0 Arial;}}{\colortbl\red255\green255\blue255;}{\stylesheet
}\paperw11685\paperh1560\margl600\margr600\margt600\margb600\pard\plain\f0\fs28\cf0
\ql\li75\ri75\fi0\b Instructions: }
В этом случае, я хотел бы сохранить "Инструкцию:"
{\rtf1\ansi {\fonttbl{\f0 Arial;}}{\colortbl\red255\green255\blue255;}{\stylesheet
}\paperw10530\paperh1920\margl600\margr600\margt600\margb600\pard\plain\f0\fs28\cf0
\ql\li75\ri75\fi0\b You will be presented with fifty (50) questions which are ran
domly selected from a pool of hundreds of questions. }
В этом случае я хочу сохранить «Вам будут представлены пятьдесят (50) вопросов, которые выполняются , которые выбраны из множества сотен вопросов».
Сценарий Powershell заключается в следующем:
$files = (dir *.rtf)
$outfile = "AllQuestions.rtf"
$files | %{
$_.Name | Add-Content $outfile
$MyVar = Get-Content $_.Name
$MyVar=$MyVar -replace ".*b\s","" | Add-Content $outfile
}
Моя цель в том, чтобы заменить все строки UP TO "\ б" с Nothin (""). Я использовал /. B \ S/(FWD скосы как разделители, = "все, ноль или более раз", б \ S = буква B и пробел.) Я частично успешный, его отгонка части
{\rtf1........cf0
\ql\li75\ri75\fi0\b Instructions: }
до
{\rtf1........cf0
Instructions: }
Это заставляет меня думать, что после cf0 происходит перевод строки. Я попытался вырвать все линии подачи
-replace "\n*",""
, который не менял строку.
Но я хочу сбросить ВСЕ предыдущую строку (от {\ rtf1 .... до правого перед окончательным текстом) & осталось с этим текстом конца ..... в этот момент я возьму трейлинг "}" выгрузите его в последующее-место
Я знаю, что ОП сказал, что они согласятся с хвостом'} ', но они заявили, что они этого действительно не хотят. Вы можете захотеть установить группу захвата, а затем группу, не связанную с захватом, для завершающего '}' там. '(? <= \\ b) (. *) (?:}) $' – TheMadTechnician
@TheMadTechnician, отлично, спасибо, обновил ответ. – radar
Yay. работал. Спасибо. Можете ли вы объяснить? <= Часть этого ??? Я думаю, что \\ b избегает обратной косой черты, буквы b и пробела. .... и в конце вы привязываетесь к $, чтобы начать поиск назад с конца ??? – jazaddict