0JZKERIN1EXN1.TTTA0JXAZK0JHK0JZKERIN1EXN2.TTTA0JXS0KZKGS0JIERZJ27I27I0JXFZKMFA "Start_string" the user input 0JXS0KZK:GS0JZKERIN1EXN3.TTTA0JXT0KZKGT0JIERZJ27I27I0JXFZKMFA "Stop_string" the user input 0JXT0KZK:GT extract_not Macro Created: 0JHKI<I!A!I<I0UJ27II1:A27II ZU227IIQ2-0"E@O/T/'27II0UH27IISGS27I I:;27II!ZV!0J0,ZPW27IIZK>27II0JZK!D!I< I0UJ27II1:A27IIZU227IIQ2-0"E@O/V/'27I I0UH27IISGT27II:;27II0JZVZK>I0JZK>27I I@O/B/'27II!T!27IIQH-3"L1%H27II@O/A/'27I I@O/B/'27II!V!27IIQH-3"L1%H27II@O/D/'27I I!B!27I27I0JZVZXY0JHK0JZKGA0JS.KIEXN 0J27IIEWZJ27I27I0JXEZKME0JHK 0JZKGA0J0J27IIERZJ27I27I0JXEZKME0JHK^A EXTRACT_NOT.TEC - Please Be Patient As This May Take A While.  Results deleted - (start & stop string deletions not shown) MYEC0JZKEWEXTN.TTTGYEG@ZZZZZZ.ZZZ ! EXTRACT_NOT ! 0JZKERIN1EXN1.TTT A  0JXAZK 0JHK 0JZKERIN1EXN2.TTT A  0JXS0KZK GS 0JIERZJ27I27I0JXFZKMF A   "Start_string" the user input  0JXS0KZK :GS 0JZKERIN1EXN3.TTT A  0JXT0KZK GT 0JIERZJ27I27I0JXFZKMF A   "Stop_string" the user input  0JXT0KZK :GT  extract_not Macro Created:  0JHK I < I !A! I< I0UJ27I I1:A27I I ZU227I IQ2-0"E@O/T/'27I I0UH27I I S GS27I I:;27I I !ZV! 0J0,ZPW27IIZK >27I I0JZK !D! I< I 0UJ27I I1:A27I I ZU227I IQ2-0"E@O/V/'27I I 0UH27I I S GT27I I:;27I I0J ZV ZK > I0JZK > 27I I@O/B/'27I I!T!27I I QH-3"L1%H27II@O/A/'27I I@O/B/'27I I !V!27I I QH-3"L1%H27II@O/D/'27I I !B!27I27I 0J ZV ZXY 0JHK 0JZKGA0J S.KIEXN 0J27IIEWZJ27I27I0JXEZKME 0JHK 0JZKGA0J 0J27IIERZJ27I27I0JXEZKME 0JHK ^A EXTRACT_NOT.TEC - Please Be Patient As This May Take A While.   Results deleted - (start & stop string deletions not shown)  MY EC 0JZKEWEXTN.TTTGY EG@ZZZZZZ.ZZZ ! EXTRACT_NOT ! ! THIS COMMAND LINE WILL EXTRACT_NOT LINES FROM A FILE BASED UPON ! ! A STARTING STRING AND AN ENDING STRING ! ! ! ! THE ORIGIONAL FILES WILL REMAIN UNMODIFIED ! ! ! ! THE RESULTS WILL BE PLACED IN "FILENAME.EXT" ! ! ! 0JZKERIN1EXN1.TTT ! GET THE NAME OF THE FILE ! ! ELIMINATE ANY CARRIAGE RETURNS! A  ! SAVE IT IN "A" BUFFER! 0JXAZK 0JHK 0JZKERIN1EXN2.TTT ! GET START STRING THE USER DESIRES TO USE ! ! ELIMINATE ANY CARRIAGE RETURNS! A  ! SAVE THE START STRING FILE NAME IN THE "S" BUFFER ! 0JXS0KZK ! GET THE ACTUAL "START_STRING" ! ! OUT OF THE "F" BUFFER ! GS 0JIERZJ27I27I0JXFZKMF ! ELIMINATE ANY CARRIAGE RETURNS! A  ! SAVE THE START STRING IN THE "S" BUFFER ! ! SHOW THE USER THE CREATED MACRO !  "Start_string" the user input  0JXS0KZK :GS 0JZKERIN1EXN3.TTT ! GET STOP STRING THE USER DESIRES TO USE ! ! ELIMINATE ANY CARRIAGE RETURNS! A  ! SAVE THE START STRING IN THE "T" BUFFER ! 0JXT0KZK ! GET THE ACTUAL "STOP_STRING" ! ! OUT OF THE "F" BUFFER ! GT 0JIERZJ27I27I0JXFZKMF ! ELIMINATE ANY CARRIAGE RETURNS! A  ! SAVE THE START STRING IN THE "S" BUFFER ! ! SHOW THE USER THE CREATED MACRO !  "Stop_string" the user input  0JXT0KZK :GT ! SHOW THE USER THE CREATED MACRO !  extract_not Macro Created:  ! BUILD THE EXTRACT_NOTION MACRO ! ! READ IN A LINE AT A TIME ! ! KILL TILL START STRING FOUND ! ! WRITE OUT EACH TILL STOP STRING FOUND ETC. ! ! ! ! THE WAY TO DO THIS IS TO HAVE TWO SECTIONS IN THE MAIN LOOP THAT ! ! EXECUTE "START" STRING MACRO TO KILL TILL "START" FOUND THEN GO TO ! ! SECOND MACRO TO SAVE TILL "STOP" FOUND ! 0JHK ! CREATE THE "EXTRACT_NOT" MACRO STRING MARO ! !~ ! ! TOP OF LOOP ! I < I !A! I< ! ZERO ZERO PAGE TEST BUFFER ! I0UJ27I ! READ A LINE ! I1:A27I !PUT BUFFER LENGTH IN BUFFER 2 ! I ZU227I ! IF NO MORE LEFT IN THIS FILE DONT TRY TO EXTRACT_NOT ANY MORE ! IQ2-0"E@O/T/'27I ! RESET THE BUFFER LENGTH TEST ! I0UH27I ! SEARCH FOR THE "START_STRING" & SAVE TILL ITS FOUND ! I S GS27I ! ON SEARCH SUCESS EXIT LOOP ! I:;27I ! SAVE THE INPUT LINE BECAUSE "START_STRING" NOT FOUND YET ! ! DONT SHOW THE USER WHAT WAS SAVED ! I !ZV! 0J0,ZPW27IIZK >27I ! END OF FIRST LOOP ! ! "START_STRING" FOUND SO START SAVING TILL "STOP_STRING FOUND ! ! ! ! TOP OF SECOND LOOP ! ! ! ! KILL THE FOUND BEGIN_STRING ALSO ! I0JZK !D! I< ! ZERO ZERO PAGE TEST BUFFER ! I 0UJ27I ! READ A LINE ! I1:A27I !PUT BUFFER LENGTH IN BUFFER 2 ! I ZU227I ! IF NO MORE LEFT IN THIS FILE DONT TRY TO EXTRACT_NOT ANY MORE ! IQ2-0"E@O/V/'27I ! RESET THE BUFFER LENGTH TEST ! I 0UH27I ! SEARCH FOR THE "STOP_STRING" & SAVE TILL ITS FOUND ! I S GT27I ! ON SEARCH SUCESS EXIT LOOP ! I:;27I ! KILL THE INPUT LINE BECAUSE "STOP_STRING" NOT FOUND YET ! ! SHOW WHAT IS KILLED USER WHAT WAS "EXTRACT_NOTED" ! I0J ZV ZK > I0JZK > 27I ! GO TO END OF MACRO TO CLOSE FILE ! I@O/B/'27I I!T!27I ! NOT 3 EMPTY BUFFERS YET SO NOT DONE ! I QH-3"L1%H27II@O/A/'27I ! GO TO END OF MACRO TO CLOSE FILE ! I@O/B/'27I I !V!27I ! NOT 3 EMPTY BUFFERS YET SO NOT DONE GO BACK TO TOP OF SECOND LOOP ! I QH-3"L1%H27II@O/D/'27I ! ALL DONE THIS FILE BECAUSE EMPTY PAGE WAS READ IN ! I !B!27I27I ! SAVE THE CREATED "EXTRACT_NOT" MACRO IN BUFFER "Y" ! 0J ZV ZXY 0JHK ! OPEN THE OUTPUT FILE FROM BUFFER "A" USE BUFFER "E" ! 0JZKGA0J S.KIEXN 0J27IIEWZJ27I27I0JXEZKME 0JHK ! OPEN THE INPUT FILE FROM BUFFER "A" USE BUFFER "E" ! 0JZKGA0J 0J27IIERZJ27I27I0JXEZKME 0JHK ! NOW READ IN INPUT FILE A LINE AT A TIME "FILE A" ! ! AND OUTPUT TO FILE "C" ! ^A EXTRACT_NOT.TEC - Please Be Patient As This May Take A While.  ! SHOW THE USER WHAT HE GOT !  Results deleted - (start & stop string deletions not shown)  ! EXECUTE THE "EXTRACT_NOT" MACRO ! MY ! CLOSE THE OUTPUT FILE ! EC ! TEMP SAVE THE CREATED "EXTRACT_NOT" MACRO ! 0JZKEWEXTN.TTTGY EG@ZZZZZZ.ZZZ