Loading ...
Sorry, an error occurred while loading the content.

Searching for multiple text items

Expand Messages
  • Flo
    This is part of a discussion that comes from the NT Basic List, notetab@yahoogroups.com, chilli_palmer@.., message #21101). It deals with RegEx, and so we
    Message 1 of 26 , May 27, 2009
    • 0 Attachment
      This is part of a discussion that comes from the NT Basic List, notetab@yahoogroups.com, "chilli_palmer@.., message #21101). It deals with RegEx, and so we better continue that topic here as Sheri said.

      Let's take the first example only:

      > I have a large number of text files in a folder
      > I need to find the file that has the text items: apples AND oranges AND bananas
      > I did get some preliminary support from Julian by email that I
      > can use the Search Disk command, and check Regular Expression and
      > use it to search through my files.

      Sheri recommended to use Search Disk with...

      (apples.*?oranges)|(apples.*?bananas)

      Are you sure, Sheri? I think this RegEx matches a string where either "apples" is somewhere followed by "oranges" OR where "apples" is somewhere followed by "bananas". So it will find any file containing just two items whereas it should select files with all three items. For example: a file with "apples" AND "oranges" is also true although it doesn't contain "bananas".

      Furthermore, it will only match those two items in a specific order whereas we are looking for files containing "apples" AND "oranges" AND "bananas" in all possible orders. For example: Your RegEx won't match "oranges...bananas...apples".

      Chilli tried to approach this issue with a Boolean Expression (as used in databases) but that's not supported in NT.

      We have to take into account that we are dealing with an alternation of six possible word orders:

      (1) apples bananas oranges
      (2) apples oranges bananas
      (3) bananas apples oranges
      (4) bananas oranges apples
      (5) oranges bananas apples
      (6) oranges apples bananas

      Consequently, a RegEx must represent an alternation of six patterns.

      To test it with the alternatives #1 to #4 only, we have to create four files each containing "apples" AND "bananas" AND "oranges" at any position in the text and in alternative order #1 to #4.

      I shortened the RegEx with "Subpattern as Subroutine":

      (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2).*(?3).*(?1)

      Using this RegEx with Search Disk selects all four files. I hope this suggestion will meet with Sheri's approval ;-)

      But, possibly, there are better solutions and more suitable tools for that job...

      Regards,
      Flo
    • Don - HtmlFixIt.com
      Interesting. I didn t realize you could use the shorthand for repeated iterations. ... You should take the time when you do one of these to explain it perhaps
      Message 2 of 26 , May 27, 2009
      • 0 Attachment
        Interesting. I didn't realize you could use the shorthand for repeated
        iterations.
        > I shortened the RegEx with "Subpattern as Subroutine":

        You should take the time when you do one of these to explain it perhaps
        ... I get it.
        ?s does what again for example?

        > (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2).*(?3).*(?1)

        the | means or
        the ?1 repeats the first word in the subpatterns (execept the (?s) even
        though in parenthesis isn't a subpattern ... that's not confusing at all
        ...)

        So you just vary the order to get all possible combinations ... I do get
        that part. Regex is fun and I almost get it most of the time.
      • Sheri
        ... Very good, Flo, I m handing over my crown :D:D Obviously the more randomly ordered criteria there are, the less desirable regex would be as a solution.
        Message 3 of 26 , May 27, 2009
        • 0 Attachment
          --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:
          >
          > This is part of a discussion that comes from the NT Basic List,
          > notetab@yahoogroups.com, "chilli_palmer@, message #21101). It
          > deals with RegEx, and so we better continue that topic here as
          > Sheri said.
          >
          > Let's take the first example only:
          >
          > > I have a large number of text files in a folder
          > > I need to find the file that has the text items: apples AND
          > > oranges AND bananas
          > > I did get some preliminary support from Julian by email that I
          > > can use the Search Disk command, and check Regular Expression and
          > > use it to search through my files.
          >
          > Sheri recommended to use Search Disk with...
          >
          > (apples.*?oranges)|(apples.*?bananas)
          >
          > Are you sure, Sheri? I think this RegEx matches a string where
          > either "apples" is somewhere followed by "oranges" OR where
          > "apples" is somewhere followed by "bananas". So it will find any
          > file containing just two items whereas it should select files
          > with all three items. For example: a file with "apples" AND
          > "oranges" is also true although it doesn't contain "bananas".
          >
          > Furthermore, it will only match those two items in a specific
          > order whereas we are looking for files containing "apples" AND
          > "oranges" AND "bananas" in all possible orders. For example: Your
          > RegEx won't match "oranges...bananas...apples".
          >
          > Chilli tried to approach this issue with a Boolean Expression (as
          > used in databases) but that's not supported in NT.
          >
          > We have to take into account that we are dealing with an alternation of six possible word orders:
          >
          > (1) apples bananas oranges
          > (2) apples oranges bananas
          > (3) bananas apples oranges
          > (4) bananas oranges apples
          > (5) oranges bananas apples
          > (6) oranges apples bananas
          >
          > Consequently, a RegEx must represent an alternation of six patterns.
          >
          > To test it with the alternatives #1 to #4 only, we have to create four files each containing "apples" AND "bananas" AND "oranges" at any position in the text and in alternative order #1 to #4.
          >
          > I shortened the RegEx with "Subpattern as Subroutine":
          >
          > (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2).*(?3).*(?1)
          >
          > Using this RegEx with Search Disk selects all four files. I hope
          > this suggestion will meet with Sheri's approval ;-)
          >
          > But, possibly, there are better solutions and more suitable tools for that job...
          >

          Very good, Flo, I'm handing over my crown :D:D

          Obviously the more randomly ordered criteria there are, the less desirable regex would be as a solution. Regex patterns work from left to right, and are best applied when when we can construct a pattern that reflects a known order.

          Regards,
          Sheri
        • Flo
          ... Oh, no, don t... I m only a beginner who still is eager to learn a lot from you! @Don Normally, we can use a backreference in order to repeat a subpattern.
          Message 4 of 26 , May 27, 2009
          • 0 Attachment
            --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:
            >
            > Very good, Flo, I'm handing over my crown :D:D

            Oh, no, don't... I'm only a beginner who still is eager to learn a lot from you!

            @Don

            Normally, we can use a backreference in order to repeat a subpattern. But a backreference -- so to say -- "gives up" once a pattern is true. Whereas the subroutine "goes back" and checks all alternatives. To describe the difference: Given two strings...

            (1) aaa meets aaaxxx

            (2) aaa meets bbbxxx

            The backreference "(aaa|bbb) meets \1xxx" matches the first string only. Once "aaa" is true it just searches for "aaaxxx".

            The subroutine "(aaa|bbb) meets (?1)xxx" matches both strings. Having found "aaa", it doesn't give up and searches "aaaxxx" only but it also tries "bbb".

            > ?s does what again for example?

            This is the "dot-all-modifier". The dot "." matches all characters except NL. So in order to jump over the CRNL-border, the RegEx is modified with (?s) and also matches NL. I placed it in here because those three items may occur at any position in the file scattered about paragraphs.

            Regards,
            Flo
          • chilli_palmer@sbcglobal.net
            ... AND bananas ... apples is somewhere followed by oranges OR where apples is somewhere followed by bananas . So it will find any file containing just
            Message 5 of 26 , May 27, 2009
            • 0 Attachment
              > > I have a large number of text files in a folder
              > > I need to find the file that has the text items: apples AND oranges
              AND bananas
              > > I did get some preliminary support from Julian by email that I
              > > can use the Search Disk command, and check Regular Expression and
              > > use it to search through my files.
              >
              > Sheri recommended to use Search Disk with...
              >
              > (apples.*?oranges)|(apples.*?bananas)
              >
              > Are you sure, Sheri? I think this RegEx matches a string where either
              "apples" is somewhere followed by "oranges" OR where "apples" is
              somewhere followed by "bananas". So it will find any file containing
              just two items whereas it should select files with all three items. For
              example: a file with "apples" AND "oranges" is also true although it
              doesn't contain "bananas".
              >
              > Furthermore, it will only match those two items in a specific order
              whereas we are looking for files containing "apples" AND "oranges" AND
              "bananas" in all possible orders. For example: Your RegEx won't match
              "oranges...bananas...apples".
              >
              > Chilli tried to approach this issue with a Boolean Expression (as used
              in databases) but that's not supported in NT.
              >
              > We have to take into account that we are dealing with an alternation
              of six possible word orders:
              >
              > (1) apples bananas oranges
              > (2) apples oranges bananas
              > (3) bananas apples oranges
              > (4) bananas oranges apples
              > (5) oranges bananas apples
              > (6) oranges apples bananas
              >
              > Consequently, a RegEx must represent an alternation of six patterns.
              >
              > To test it with the alternatives #1 to #4 only, we have to create four
              files each containing "apples" AND "bananas" AND "oranges" at any
              position in the text and in alternative order #1 to #4.
              >
              > I shortened the RegEx with "Subpattern as Subroutine":
              >
              >
              (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2\
              ).*(?3).*(?1)
              >
              > Using this RegEx with Search Disk selects all four files. I hope this
              suggestion will meet with Sheri's approval ;-)
              >
              > But, possibly, there are better solutions and more suitable tools for
              that job...

              Flo, thanks for your replies. I just did (gladly) buy the 6.1 license
              and installed it.

              So there is not a (relatively) easy way to do boolean type searching
              (i.e. using operators AND OR NOT) with NoteTab Pro? I also found this
              free PRGrep utility <http://www.prgrep.com/> that allows AND OR
              operators in addition to using the option of Regular Expression which is
              more involved to use it right.



              [Non-text portions of this message have been removed]
            • Alec Burgess
              ... (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2).*(?3).*(?1) ... Sheri Very good, Flo, I m handing over my crown :D:D Just for
              Message 6 of 26 , May 27, 2009
              • 0 Attachment
                Flo (flo.gehrke@...) wrote (in part) (on 2009-05-27 at 12:46):
                >
                (?s)(apples).*(bananas).*(oranges)|(?1).*(?3).*(?2)|(?2).*(?1).*(?3)|(?2).*(?3).*(?1)
                >
                > Using this RegEx with Search Disk selects all four files. I hope this
                > suggestion will meet with Sheri's approval ;-)

                Sheri > Very good, Flo, I'm handing over my crown :D:D

                Just for fun I looked back in my gmail archive ... looks like your first
                post in the clips list was Jul 12, 2006 about "Removing stopwords from
                word list" - I don't know about who gets to wear the crown but you are
                definitely near the top of Most Improved and Most Generous Contributer
                :-) . btw: You used email address jonas_ramus back then?
                >
                > But, possibly, there are better solutions and more suitable tools for
                > that job...

                If the number of words to be AND'ed got to be more than four (ie think
                its 2^(N-1) right) I'd probably look for some alternative.
                eg.

                * find all files with word-1,
                * take that list and look in it for all files with word-2 (ie.
                word-1 AND word-2)
                o ...
                * finally find all files with word-N (ie. all target files)

                I'd thought there must be some way to get the list of files which match
                a search-disk command using clips but after a quick look I'm not seeing it.

                A partially-Notetab approach would be to use the ^!shell command where
                you use "grep" (need unxutils or cygwin installed for that) to get the
                names of files matching one word and then feed that list into the next
                command. Native command-lines (aka DOS commands) could get the same
                results using FOR to specify the files and FIND to specify the strings
                but you would need to parse the output to get the list of files matching
                for the next step.

                If you have to do this kind of thing often getting one of the free file
                indexing programs (X1, Google Desktop, Windows Search, Copernicus) would
                make a lot of sense.

                Aside: not directly relevant to the above task but IMO everyone should
                have (free) Everything (http://www.voidtools.com/). This program indexes
                all file names on your system and gives immediate access to any file - I
                very often use it almost as a replacement for Windows Explorer - files
                can be dragged from it into Notetab etc. My system is fairly powerful so
                others might have different experience but it is able to do its job with
                almost zero impact on system responsiveness.

                --
                Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                [Non-text portions of this message have been removed]
              • Alec Burgess
                chilli_palmer@sbcglobal.net (chilli_palmer@sbcglobal.net) wrote (in ... Nice find Chilli. Note that it apparently doesn t handle Unicode files if that is an
                Message 7 of 26 , May 27, 2009
                • 0 Attachment
                  chilli_palmer@... (chilli_palmer@...) wrote (in
                  part) (on 2009-05-27 at 16:07):
                  > So there is not a (relatively) easy way to do boolean type searching
                  > (i.e. using operators AND OR NOT) with NoteTab Pro? I also found this
                  > free PRGrep utility <http://www.prgrep.com/> that allows AND OR
                  > operators in addition to using the option of Regular Expression which
                  > is
                  > more involved to use it right.

                  Nice find Chilli. Note that it apparently doesn't handle Unicode files
                  if that is an issue.
                  From change log it appears this has been under development since 2001
                  with last release Apr-2009.

                  A complementary program is Ecobyte Replace Text (formerly BK ReplaceEM
                  http://www.boolean.ca/replace/) isn't as actively developed and has an
                  less comprehensive regular expression engine but *DOES* support
                  replacing in addition to just locating text,

                  --
                  Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                  [Non-text portions of this message have been removed]
                • chilli_palmer@sbcglobal.net
                  ... Thanks Alec. Grabbed that one too!
                  Message 8 of 26 , May 28, 2009
                  • 0 Attachment
                    > Aside: not directly relevant to the above task but IMO everyone should
                    > have (free) Everything (http://www.voidtools.com/). This program indexes
                    > all file names on your system and gives immediate access to any file - I
                    > very often use it almost as a replacement for Windows Explorer - files
                    > can be dragged from it into Notetab etc.

                    Thanks Alec. Grabbed that one too!
                  • Sheri
                    ... Yet another slightly dated but competent program (in this case not free, but a 30 day trial version is available): AJC Grep from .
                    Message 9 of 26 , May 29, 2009
                    • 0 Attachment
                      --- In ntb-clips@yahoogroups.com, Alec Burgess <buralex@...> wrote:

                      > A complementary program is Ecobyte Replace Text (formerly BK
                      > ReplaceEM http://www.boolean.ca/replace/) isn't as actively
                      > developed and has an less comprehensive regular expression engine
                      > but *DOES* support replacing in addition to just locating text,

                      Yet another slightly dated but competent program (in this case not free, but a 30 day trial version is available): AJC Grep from <http://www.ajcgrep.com>. It apparently uses a version of PCRE from 2003 or 2004, so recent PCRE syntax elements are missing. I suggested he consider updating it. It will do regex or non-regex searches and can do replacements.

                      After a search, you can view file listings (If you copy directly from the listings, it puts file objects on the clipboard, e.g., for pasting file copies into Explorer) and matches in context, etc. Double-clicking a match takes you directly to that match (highlighted) in a whole file viewer. You can also open the file in an external editor.

                      With it, you can do things like this:

                      Find all *.txt files in xyz directory containing apple. Optionally recurse subdirectories. Capture a list of matching files as text. (What is captured as text is configurable -- don't have to capture anything but you need to for copying the file names to the clipboard). Copy the captured filenames to the clipboard and paste it into the files to search. Now search for banana.

                      etc.

                      Regards,
                      Sheri
                    • Alec Burgess
                      Sheri (silvermoonwoman@comcast.net) wrote (in part) (on 2009-05-29 at ... Sheri: I m sure you already know about PowerGrep? IMHO at $99.00 by JGSoft - author
                      Message 10 of 26 , May 30, 2009
                      • 0 Attachment
                        Sheri (silvermoonwoman@...) wrote (in part) (on 2009-05-29 at
                        16:58):
                        > Yet another slightly dated but competent program (in this case not
                        > free, but a 30 day trial version is available): AJC Grep from
                        > <http://www.ajcgrep.com>. It apparently uses a version of PCRE from
                        > 2003 or 2004, so recent PCRE syntax elements are missing. I suggested
                        > he consider updating it. It will do regex or non-regex searches and
                        > can do replacements.

                        Sheri: I'm sure you already know about PowerGrep?
                        IMHO at $99.00 by JGSoft - author of RegexBuddy - its the gold standard
                        in this niche. If anyone really need this kind of program you should
                        check it out.

                        Just checked the web-site - it appears JGSoft now allows 15-day trials
                        of all his programs and up to 90-day no questions asked refunds if you
                        pay first. Its obviously most attractive to those who can get someone
                        else to pay for it but it is a really slick tool if you can justify it :-$

                        --
                        Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                        [Non-text portions of this message have been removed]
                      • Sheri
                        ... LOL, then he raised the price overnight by half! Crazy, IMO. Personally, I still get a lot of mileage out of Agent Ransack. Just looked at the feature list
                        Message 11 of 26 , May 30, 2009
                        • 0 Attachment
                          --- In ntb-clips@yahoogroups.com, Alec Burgess <buralex@...> wrote:
                          >
                          > Sheri (silvermoonwoman@...) wrote (in part) (on 2009-05-29 at
                          > 16:58):
                          > > Yet another slightly dated but competent program (in this case
                          > > not free, but a 30 day trial version is available): AJC Grep from
                          > > <http://www.ajcgrep.com>. It apparently uses a version of PCRE
                          > > from 2003 or 2004, so recent PCRE syntax elements are missing. I
                          > > suggested he consider updating it. It will do regex or non-regex
                          > > searches and can do replacements.
                          >
                          > Sheri: I'm sure you already know about PowerGrep?
                          > IMHO at $99.00 by JGSoft - author of RegexBuddy - its the gold
                          > standard in this niche. If anyone really need this kind of
                          > program you should check it out.
                          >
                          > Just checked the web-site - it appears JGSoft now allows 15-day
                          > trials of all his programs and up to 90-day no questions asked
                          > refunds if you pay first. Its obviously most attractive to those
                          > who can get someone else to pay for it but it is a really slick
                          > tool if you can justify it :-$

                          LOL, then he raised the price overnight by half! Crazy, IMO.

                          Personally, I still get a lot of mileage out of Agent Ransack. Just looked at the feature list for that authors' Pro Version (File Locator Pro, $29.95) and it also looks impressive. It has a 30 day trial and says it supports Boolean searches such as AND, OR, and NOT.

                          Regards,
                          Sheri
                        • Flo
                          ... I would like to remember FINDSTR and the discussion of July 2007. In some cases, we are better off with FINDSTR since it can easily be used with
                          Message 12 of 26 , May 30, 2009
                          • 0 Attachment
                            --- In ntb-clips@yahoogroups.com, Alec Burgess <buralex@...> wrote:

                            > I'd thought there must be some way to get the list of files
                            > which match a search-disk command using clips but after a quick
                            > look I'm not seeing it.

                            I would like to remember FINDSTR and the discussion of July 2007. In some cases, we are better off with FINDSTR since it can easily be used with ^$GetDosOutput$ whereas "there are not even any Clip commands for scripting Search Disk (Sheri, #16806)".

                            Example: Find all files in \Documents containing "apples" (whole words only, file names only)...

                            ; one long line
                            ^!Info ^$GetDosOutput("findstr /r /i /m "\<apples>\" ^$GetDocumentPath$*.txt")$

                            The only problem I've got with FINDSTR is: It interprets a string like "apples bananas oranges" as a Boolean "apples OR bananas OR oranges" (or -- with /C: -- as a literal string). I can't see, however, how FINDSTR could treat that string as a Boolean AND as demanded for Chilli's job. Is there a solution for this?

                            Thanks for your advice!
                            Flo

                            P.S. Let me add another tool to your list of HD Scanners: I like InfoRapid S&E (http://www.inforapid.de/html/searchreplace.htm). It masters Boolean Expressions, RegEx, comes with filters for PDF, HTML, DOC etc, finds file names and/or file contents, replaces text in TXT files, saves search results to disk, it's fast though it doesn't create index files -- and it's free.
                          • Sheri
                            ... I m not too good at bat files anymore but certainly can be done. Write out the bat file with a clip, then run it. For example, the following works (plenty
                            Message 13 of 26 , May 30, 2009
                            • 0 Attachment
                              --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:

                              > ; one long line
                              > ^!Info ^$GetDosOutput("findstr /r /i /m "\<apples>\" ^$GetDocumentPath$*.txt")$
                              >
                              > The only problem I've got with FINDSTR is: It interprets a string
                              > like "apples bananas oranges" as a Boolean "apples OR bananas OR
                              > oranges" (or -- with /C: -- as a literal string). I can't see,
                              > however, how FINDSTR could treat that string as a Boolean AND as
                              > demanded for Chilli's job. Is there a solution for this?

                              I'm not too good at bat files anymore but certainly can be done. Write out the bat file with a clip, then run it.

                              For example, the following works (plenty of long lines here).

                              But the bat file is checking errorlevel, when it should be checking if the output file is empty between uses of FINDSTR. Not sure how to do that.

                              H="Find Files with All Words"
                              ^!Set %outfile1%="^$GetTmpPath$Out0.tmp"
                              ^!Set %outfile2%="^$GetTmpPath$Out1.tmp"
                              ^!DeleteFile "^$GetTmpPath$Out0.tmp"
                              ^!DeleteFile "^$GetTmpPath$Out1.tmp"
                              ^!DeleteFile "^$GetTmpPath$searchands.bat"
                              ^!IfEmpty ^%searchfolder% Next Else Skip_1
                              ^!Set %searchfolder%=^$GetDataPath$
                              ^!IfEmpty ^%filepat% Next Else Skip_1
                              ^!Set %filepat%="*.txt"
                              ^!SetWizardWidth 200
                              ^!Set %AndWordx%="^?{Enter space separated AND searchwords==^%AndWordx%}";%searchfolder%="^?{(T=D)Select Search folder==^%searchfolder%}";%filepat%="^?{Enter file pattern==^%filepat%}"
                              ^!Setlistdelimiter ^%Space%
                              ^!SetArray %AndWords%="^%AndWordx%"
                              ^!Set %searchdir%=^%searchfolder%^%filepat%
                              :first
                              ^!Set %ext%=1
                              ^!Texttofile "^$GetTmpPath$searchands.bat" @Echo Off^%NL%findstr /i /M "\<^%AndWords1%\>" "^%searchdir%" > "^$GetTmpPath$Out^%ext%.tmp"^%NL%
                              ^!Appendtofile "^$GetTmpPath$searchands.bat" if not errorlevel 0 goto :EOF^%NL%
                              ^!Set i=1
                              :loop
                              ^!Inc %i%
                              ^!If ^%i%>^%AndWords0% Out
                              ^!Set %infile%="^$GetTmpPath$Out^%ext%.tmp"
                              ^!Set %ext%=^$Calc(^%i% mod 2)$
                              ^!Set %outfile%="^$GetTmpPath$Out^%ext%.tmp"
                              ^!Goto dofind
                              :dofind
                              ^!Appendtofile "^$GetTmpPath$searchands.bat" findstr /i /M /F:"^%infile%" "\<^%AndWords^%i%%\>" > "^%outfile%"^%NL%
                              ^!Appendtofile "^$GetTmpPath$searchands.bat" if not errorlevel 0 goto :EOF^%NL%
                              ^!Goto loop
                              :out
                              ^!Set %out%=^$GetOutput("^$GetTmpPath$searchands.bat")$
                              ^!IfEmpty ^$GetFileText("^%outfile%")$ Next Else Skip_2
                              ^!Info No Matches
                              ^!Goto ClearMyVars
                              ^!Info ^$GetFileText("^%outfile%")$^%NL%^%out%
                              :ClearMyVars
                              ^!Set %AndWords%=""
                              ^!ClearVariable %AndWords%
                              ^!ClearVariable %ext%
                              ^!ClearVariable %i%
                              ^!ClearVariable %infile%
                              ^!ClearVariable %out%
                              ^!ClearVariable %outfile%
                              ^!ClearVariable %outfile1%
                              ^!ClearVariable %outfile2%
                              ^!ClearVariable %searchdir%
                            • Jane Sedgewick
                              Actually, Powergrep has been $149 since at least 2005 around the time version 3 was released, so it hasn t really been raised by half overnight. Jane ... From:
                              Message 14 of 26 , May 31, 2009
                              • 0 Attachment
                                Actually, Powergrep has been $149 since at least 2005 around the time version 3 was released, so it hasn't really been raised by half overnight.



                                Jane



                                --- On Sat, 5/30/09, Sheri <silvermoonwoman@...> wrote:

                                From: Sheri <silvermoonwoman@...>
                                Subject: [Clip] Re: Searching for multiple text items
                                To: ntb-clips@yahoogroups.com
                                Date: Saturday, May 30, 2009, 5:00 AM

















                                --- In ntb-clips@yahoogrou ps.com, Alec Burgess <buralex@... > wrote:

                                >

                                > Sheri (silvermoonwoman@ ...) wrote (in part) (on 2009-05-29 at

                                > 16:58):

                                > > Yet another slightly dated but competent program (in this case

                                > > not free, but a 30 day trial version is available): AJC Grep from

                                > > <http://www.ajcgrep com>. It apparently uses a version of PCRE

                                > > from 2003 or 2004, so recent PCRE syntax elements are missing. I

                                > > suggested he consider updating it. It will do regex or non-regex

                                > > searches and can do replacements.

                                >

                                > Sheri: I'm sure you already know about PowerGrep?

                                > IMHO at $99.00 by JGSoft - author of RegexBuddy - its the gold

                                > standard in this niche. If anyone really need this kind of

                                > program you should check it out.

                                >

                                > Just checked the web-site - it appears JGSoft now allows 15-day

                                > trials of all his programs and up to 90-day no questions asked

                                > refunds if you pay first. Its obviously most attractive to those

                                > who can get someone else to pay for it but it is a really slick

                                > tool if you can justify it :-$



                                LOL, then he raised the price overnight by half! Crazy, IMO.



                                Personally, I still get a lot of mileage out of Agent Ransack. Just looked at the feature list for that authors' Pro Version (File Locator Pro, $29.95) and it also looks impressive. It has a 30 day trial and says it supports Boolean searches such as AND, OR, and NOT.



                                Regards,

                                Sheri








                                __._,_.__








                                Messages in this topic (11)



                                Reply (via web post)
                                |

                                Start a new topic




                                Messages
                                | Files
                                | Photos












                                Fookes Software: http://www.fookes.com/

                                NoteTab website: http://www.notetab.com/

                                NoteTab Discussion Lists: http://www.notetab.com/groups.php



                                ***







                                MARKETPLACE


                                I made $5,827 last week.. Find out How. Part Time!.


                                $9000/Month at Home. Learn how Part Time, online!.


                                Mom Power: Discover the community of moms doing more for their families, for the world and for each other









                                Change settings via the Web (Yahoo! ID required)

                                Change settings via email: Switch delivery to Daily Digest | Switch format to Traditional



                                Visit Your Group
                                |

                                Yahoo! Groups Terms of Use |

                                Unsubscribe
















                                Recent Activity


                                 12
                                New Members









                                Visit Your Group





                                Yahoo! Finance
                                It's Now Personal
                                Guides, news,
                                advice & more.

                                New web site?
                                Drive traffic now.
                                Get your business
                                on Yahoo! search.

                                Sell Online
                                Start selling with
                                our award-winning
                                e-commerce tools.




                                .

























                                [Non-text portions of this message have been removed]
                              • Flo
                                ... Thank you very much, Sheri, for this elaborate and instructive clip! I ve tested it with several files and got perfect results. I understand that FINDSTR
                                Message 15 of 26 , May 31, 2009
                                • 0 Attachment
                                  --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:
                                  >
                                  > I'm not too good at bat files anymore but certainly can be done.
                                  > Write out the bat file with a clip, then run it.
                                  >
                                  > For example, the following works (plenty of long lines here).
                                  >
                                  > H="Find Files with All Words"
                                  > ^!Set %outfile1%="^$GetTmpPath$Out0.tmp"
                                  > ^!Set %outfile2%="^$GetTmpPath$Out1.tmp"
                                  > etc...

                                  Thank you very much, Sheri, for this elaborate and instructive clip! I've tested it with several files and got perfect results.

                                  I understand that FINDSTR itself doesn't master a Boolean AND but we can translate this in a series of FINDSTR commands being written into a batch file. However, we'll have some more problems when trying to execute queries with Boolean OR, NOT etc as mentioned by Chilli.

                                  So I still wonder if there isn't a DOS-tool that masters those expressions and could be used with NT? I've found a list of DOS-utilities on...

                                  http://www.dreamlandbbs.com/files/filegate/utilnet/utilnet/

                                  and tried bfnd0208.zip, containing BFIND.EXE that works with FIND. I placed this tool in C:\Windows and managed to run it from the command line, for example:

                                  bfind apples e:\notetab\documents\*.txt

                                  But I didn't solicit any result from this tool when using it with a clip like...

                                  ^!Info ^$GetOutput("bfind apples e:\notetab\Documents\*.txt")$

                                  What's wrong with this?

                                  Flo
                                • Sheri
                                  ... Hmn, I tried it from the command line and after a few lines of short-file-name-style output it gave an error Invalid function call. Its either not fully
                                  Message 16 of 26 , May 31, 2009
                                  • 0 Attachment
                                    --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:
                                    > http://www.dreamlandbbs.com/files/filegate/utilnet/utilnet/
                                    >
                                    > and tried bfnd0208.zip, containing BFIND.EXE that works with FIND. I placed this tool in C:\Windows and managed to run it from the command line, for example:
                                    >
                                    > bfind apples e:\notetab\documents\*.txt
                                    >
                                    > But I didn't solicit any result from this tool when using it with a clip like...
                                    >
                                    > ^!Info ^$GetOutput("bfind apples e:\notetab\Documents\*.txt")$
                                    >
                                    > What's wrong with this?
                                    >

                                    Hmn, I tried it from the command line and after a few lines of short-file-name-style output it gave an error "Invalid function call."

                                    Its either not fully compatible with XP or with NTFS.

                                    I haven't tried it from NoteTab, but ^$GetOutput$ only works with 32 bit apps. You can try ^$GetDosOutput$.

                                    Regards,
                                    Sheri
                                  • Flo
                                    ... Yes, Sheri, you are right: For me, BFIND works with ^$GetDosOutput$. Also you have to use short path and file names in the old DOS-style. Entering the path
                                    Message 17 of 26 , Jun 1, 2009
                                    • 0 Attachment
                                      --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:

                                      > You can try ^$GetDosOutput$.

                                      Yes, Sheri, you are right: For me, BFIND works with ^$GetDosOutput$. Also you have to use short path and file names in the old DOS-style. Entering the path with ^$GetDocumentPath$ is not accepted.

                                      Just copy BFIND.EXE to C:\Windows (no more installation needed).

                                      Here's is a short clip that works for me. Assuming that the files to be searched are stored in e:\notetab\documents\...


                                      ^!SetWizardLabel Find with Boolean operators
                                      ^!Set %Search%=^?{Enter search words separated with space:}; %Spec%=^?{File specification:=*.TXT}
                                      ^$GetDosOutput(bfind /i /-empty ^%Search% e:\notetab\Docume~1\^%Spec%)$


                                      Start the clip from an empty document -- the result will be inserted. The file specification is TXT by default but you may limit it to MYFILES*.TXT, for example.

                                      Enter search words like this...

                                      apples
                                      apples and oranges
                                      (apples or oranges) and not bananas

                                      For more information about the syntax see BFIND.TXT that comes with BFND0208.ZIP. Here is another download address: http://users.erols.com/waynesof/bruce.htm

                                      Regards,
                                      Flo
                                    • Don - HtmlFixIt.com
                                      wonder if there is a third person with a clue what you two are talking about ... man you guys impress me sometimes but I have zero idea where we are or what we
                                      Message 18 of 26 , Jun 1, 2009
                                      • 0 Attachment
                                        wonder if there is a third person with a clue what you two are talking
                                        about ...
                                        man you guys impress me sometimes but I have zero idea where we are or
                                        what we are doing as this is WAY over my head ... but then regex used to
                                        completely be that way too ... now I get it some of the time at least

                                        thanks to both of you for your continued help

                                        Flo wrote:
                                        > --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:
                                        >
                                        >> You can try ^$GetDosOutput$.
                                        >
                                        > Yes, Sheri, you are right: For me, BFIND works with ^$GetDosOutput$. Also you have to use short path and file names in the old DOS-style. Entering the path with ^$GetDocumentPath$ is not accepted.
                                        >
                                        > Just copy BFIND.EXE to C:\Windows (no more installation needed).
                                        >
                                        > Here's is a short clip that works for me. Assuming that the files to be searched are stored in e:\notetab\documents\...
                                        >
                                        >
                                        > ^!SetWizardLabel Find with Boolean operators
                                        > ^!Set %Search%=^?{Enter search words separated with space:}; %Spec%=^?{File specification:=*.TXT}
                                        > ^$GetDosOutput(bfind /i /-empty ^%Search% e:\notetab\Docume~1\^%Spec%)$
                                        >
                                        >
                                        > Start the clip from an empty document -- the result will be inserted. The file specification is TXT by default but you may limit it to MYFILES*.TXT, for example.
                                        >
                                        > Enter search words like this...
                                        >
                                        > apples
                                        > apples and oranges
                                        > (apples or oranges) and not bananas
                                        >
                                        > For more information about the syntax see BFIND.TXT that comes with BFND0208.ZIP. Here is another download address: http://users.erols.com/waynesof/bruce.htm
                                        >
                                        > Regards,
                                        > Flo
                                        >
                                        >
                                        >
                                        >
                                        >
                                        >
                                        > ------------------------------------
                                        >
                                        > Fookes Software: http://www.fookes.com/
                                        > NoteTab website: http://www.notetab.com/
                                        > NoteTab Discussion Lists: http://www.notetab.com/groups.php
                                        >
                                        > ***
                                        > Yahoo! Groups Links
                                        >
                                        >
                                        >
                                        >
                                      • Sheri
                                        ... With effort I managed to determine which of my txt files bfind didn t like, and once removed, I didn t get the Invalid Function error. My test folder has
                                        Message 19 of 26 , Jun 1, 2009
                                        • 0 Attachment
                                          --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:
                                          >
                                          > --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@> wrote:
                                          >
                                          > > You can try ^$GetDosOutput$.
                                          >
                                          > Yes, Sheri, you are right: For me, BFIND works with
                                          > ^$GetDosOutput$. Also you have to use short path and file names
                                          > in the old DOS-style. Entering the path with ^$GetDocumentPath$
                                          > is not accepted.
                                          >
                                          > Just copy BFIND.EXE to C:\Windows (no more installation needed).
                                          >

                                          With effort I managed to determine which of my txt files bfind didn't like, and once removed, I didn't get the "Invalid Function" error. My test folder has (or had) 76 txt files of various sizes.

                                          I see that it is not really testing whole words. Looking for "abc" finds Babcock, for example.

                                          Also, if searching *.txt or a file with a filelist using the option @filename, it is apparent that it quits if it hits a file that elicits this message:

                                          (Warning... No EOL within first 24000 characters. Skipping...)

                                          Sadly, it didn't say which file caused that message, so there was more hunting. :/

                                          When searching individual files, I found additional matches in files with file names past the file that gave that warning.

                                          Also, DOS doesn't like non-ascii characters. "Zuschuß" is in the word list you once posted, but using that as a search word in the clip wizard gets no matches.

                                          The bfind text file states: "As with most DOS-based utilities,
                                          this program doesn't understand the weird subdirectories, long
                                          filenames, invalid characters that are possible under Windows."

                                          So, be aware of such issues when you use it.

                                          Regards,
                                          Sheri
                                        • Alec Burgess
                                          Don - HtmlFixIt.com (don@htmlfixit.com) wrote (in part) (on 2009-06-01 ... -- Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)
                                          Message 20 of 26 , Jun 1, 2009
                                          • 0 Attachment
                                            Don - HtmlFixIt.com (don@...) wrote (in part) (on 2009-06-01
                                            at 12:28):
                                            > wonder if there is a third person with a clue what you two are talking
                                            > about ...

                                            :-)

                                            --
                                            Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                                            [Non-text portions of this message have been removed]
                                          • Alec Burgess
                                            Sheri (silvermoonwoman@comcast.net) wrote (in part) (on 2009-06-01 at ... Flo/Sheri - I haven t followed this in detail and had never heard of bfind before
                                            Message 21 of 26 , Jun 1, 2009
                                            • 0 Attachment
                                              Sheri (silvermoonwoman@...) wrote (in part) (on 2009-06-01 at
                                              18:11):
                                              > The bfind text file states: "As with most DOS-based utilities,
                                              > this program doesn't understand the weird subdirectories, long
                                              > filenames, invalid characters that are possible under Windows."

                                              Flo/Sheri - I haven't followed this in detail and had never heard of
                                              bfind before but are either of you familiar with Unix based text
                                              processing commands available via UnxUtils (smaller download and less
                                              extraneous programs) or Cygwin? By putting their programs in your $PATH
                                              environment that can be used (I think) co-equal with "standard" DOS
                                              commands.

                                              I'd be looking at one of the grep variants (egrep, fgrep, grep - I've
                                              never been quite clear on the distinctions), sed (can handle both
                                              finding and replacing) and possible awk. All of these can be used in
                                              conjunction with $GetOutput$ and/or $GetDosOutput$

                                              Not sure which (if any handle Unicode etc).

                                              For AND logic I'd be looking at generating a list of files containing
                                              1st word with a grep command, piping that into a second grep command
                                              looking for 2nd word , ... , rinse, lather and repeat till Nth word.

                                              For OR logic - running a grep for each word generating N file-lists,
                                              concatenating them together eliminating duplicates.

                                              Assuming you don't want to instead find a purpose-built utility but do
                                              it all as close to Notetab clips as possible the next level would be to
                                              get sufficient knowledge of another scripting language that solutions
                                              would readily come to mind in one of them. (eg. perl, python, ruby,
                                              vbscript, powerscript, lua). Unfortunately I' haven't taken the time
                                              (hours, days(?), weeks(?) ... longer(?)) to get that familiarity.

                                              --
                                              Regards ... Alec (buralex@gmail & WinLiveMess - alec.m.burgess@skype)




                                              [Non-text portions of this message have been removed]
                                            • Sheri
                                              ... Hi Alec (Flo), I think Flo was hoping for an easy, free solution to boolean searches that could be launched from clips. Bfind takes compound boolean
                                              Message 22 of 26 , Jun 1, 2009
                                              • 0 Attachment
                                                --- In ntb-clips@yahoogroups.com, Alec Burgess <buralex@...> wrote:
                                                >
                                                >
                                                > Sheri (silvermoonwoman@...) wrote (in part) (on 2009-06-01 at
                                                > 18:11):
                                                > > The bfind text file states: "As with most DOS-based utilities,
                                                > > this program doesn't understand the weird subdirectories, long
                                                > > filenames, invalid characters that are possible under Windows."
                                                >
                                                > Flo/Sheri - I haven't followed this in detail and had never heard
                                                > of bfind before but are either of you familiar with Unix based
                                                > text processing commands available via UnxUtils (smaller download
                                                > and less extraneous programs) or Cygwin? By putting their
                                                > programs in your $PATH environment that can be used (I think)
                                                > co-equal with "standard" DOS commands.

                                                Hi Alec (Flo),

                                                I think Flo was hoping for an easy, free solution to boolean searches that could be launched from clips. Bfind takes compound boolean expressions. Too bad Mr. Guthrie never updated beyond VBasic Compiler for DOS 1.0. His documentation was written using PE2 (which prompted my recent poorly received nostalgia... :D)

                                                But anyway. If you come across a better command line tool that works well on Windows, let us know.

                                                > For AND logic I'd be looking at generating a list of files
                                                > containing 1st word with a grep command, piping that into a
                                                > second grep command looking for 2nd word , ... , rinse, lather
                                                > and repeat till Nth word.

                                                Exactly what the recently posted clip-to-bat-to-^$GetOutput$ (using Findstr) did. I may refine that a bit.
                                                >
                                                > For OR logic - running a grep for each word generating N
                                                > file-lists, concatenating them together eliminating duplicates.

                                                Findstr handles "Or" directly. A list of search words is automatically or'ed. Findstr also does regular expressions, which one would think could alternate or's.

                                                Actually Bfind is also good addition to the toolbox once you get a handle on its limitations. Flo, Bfind was a "good find" :D

                                                Regards,
                                                Sheri
                                              • Flo
                                                ... Yes, Sheri, that s my point. To be launched from a clip and returning the search results to NT. Or more detailed: 1. Start a clip in NT 2. Use hard-coded
                                                Message 23 of 26 , Jun 2, 2009
                                                • 0 Attachment
                                                  --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:
                                                  >
                                                  >
                                                  > Hi Alec (Flo),
                                                  >
                                                  > I think Flo was hoping for an easy, free solution to boolean
                                                  > searches that could be launched from clips...

                                                  > I think Flo was hoping for an easy, free solution to boolean
                                                  > searches that could be launched from clips.

                                                  Yes, Sheri, that's my point. To be launched from a clip and returning the search results to NT. Or more detailed:

                                                  1. Start a clip in NT
                                                  2. Use hard-coded search criteria or enter them in a wizard
                                                  3. Send these criteria as parameters to an external tool
                                                  4. Return the search results to NT, i.e. insert the results into a document or continue clip execution with these results.

                                                  I agree with you that BFIND is not the standard we need though it masters Boolean Expressions. (By the way: We may improve that whole-words issue a little bit by adding spaces and writing "·Babcock·" (quoted) but again this wouldn't cover all variations.)

                                                  Maybe the best solution would be an utility that combines something like BFIND (Boolean expressions) with FINDSTR (RegEx), or another tool that we havn't seen so far.

                                                  Those work-arounds with GREP or FINDSTR are able to simulate a Boolean AND, OR, and probably also a NOT. But -- as I said before -- we'll get into trouble when trying to create a solution executing enlarged Boolean queries like Chilli's example "(apples AND oranges) OR (apples AND bananas)".

                                                  There are tools perfectly executing such Boolean queries -- I mentioned InfoRapid (http://www.inforapid.de/html/searchreplace.htm), for example. Another nice little tool is WanyWord (http://home4.inet.tele.dk/jensguld/). But the problem with these programs is how to fully integrate them in a clip as mentioned above.

                                                  So I agree with Sheri's summary: "But anyway. If you come across a better command line tool that works well on Windows, let us know."

                                                  Or we may see an improved Search Disk Command in the future. i.e.: a Search Disk that executes Boolean search and comes with commands for scripting. I wonder why Eric Fookes shows that "fair amount of reserve" with respect to these issues though the drawbacks of Search Disk have often been discussed in this forum...

                                                  Regards,
                                                  Flo
                                                • Sheri
                                                  Hi Flo, FWIW, More on Findstr: Its regex features are quite limited, e.g., vertical bar, plus sign and question mark have no special meaning. Findstr search
                                                  Message 24 of 26 , Jun 4, 2009
                                                  • 0 Attachment
                                                    Hi Flo,

                                                    FWIW, More on Findstr:

                                                    Its regex features are quite limited, e.g., vertical bar, plus sign and question mark have no special meaning.

                                                    Findstr search strings can be stored in a file read with /G: parameter (one string per line, where lines are "or'ed"). If read from a file, ansi characters with high decimal values lik "ß" work fine. But if such characters are included on the command line, e.g., in ^$GetOutPut$, they won't work.

                                                    Regards,
                                                    Sheri






                                                    terms submitted on the command line contain such characters, they don't work.

                                                    --- In ntb-clips@yahoogroups.com, "Flo" <flo.gehrke@...> wrote:
                                                    >
                                                    > --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@> wrote:
                                                    > >
                                                    > >
                                                    > > Hi Alec (Flo),
                                                    > >
                                                    > > I think Flo was hoping for an easy, free solution to boolean
                                                    > > searches that could be launched from clips...
                                                    >
                                                    > > I think Flo was hoping for an easy, free solution to boolean
                                                    > > searches that could be launched from clips.
                                                    >
                                                    > Yes, Sheri, that's my point. To be launched from a clip and returning the search results to NT. Or more detailed:
                                                    >
                                                    > 1. Start a clip in NT
                                                    > 2. Use hard-coded search criteria or enter them in a wizard
                                                    > 3. Send these criteria as parameters to an external tool
                                                    > 4. Return the search results to NT, i.e. insert the results into a document or continue clip execution with these results.
                                                    >
                                                    > I agree with you that BFIND is not the standard we need though it masters Boolean Expressions. (By the way: We may improve that whole-words issue a little bit by adding spaces and writing "·Babcock·" (quoted) but again this wouldn't cover all variations.)
                                                    >
                                                    > Maybe the best solution would be an utility that combines something like BFIND (Boolean expressions) with FINDSTR (RegEx), or another tool that we havn't seen so far.
                                                    >
                                                    > Those work-arounds with GREP or FINDSTR are able to simulate a Boolean AND, OR, and probably also a NOT. But -- as I said before -- we'll get into trouble when trying to create a solution executing enlarged Boolean queries like Chilli's example "(apples AND oranges) OR (apples AND bananas)".
                                                    >
                                                    > There are tools perfectly executing such Boolean queries -- I mentioned InfoRapid (http://www.inforapid.de/html/searchreplace.htm), for example. Another nice little tool is WanyWord (http://home4.inet.tele.dk/jensguld/). But the problem with these programs is how to fully integrate them in a clip as mentioned above.
                                                    >
                                                    > So I agree with Sheri's summary: "But anyway. If you come across a better command line tool that works well on Windows, let us know."
                                                    >
                                                    > Or we may see an improved Search Disk Command in the future. i.e.: a Search Disk that executes Boolean search and comes with commands for scripting. I wonder why Eric Fookes shows that "fair amount of reserve" with respect to these issues though the drawbacks of Search Disk have often been discussed in this forum...
                                                    >
                                                    > Regards,
                                                    > Flo
                                                    >
                                                  • Flo
                                                    ... Thanks for these hints, Sheri! I ve tested some ß . When stored in a file, it works fine. Flo
                                                    Message 25 of 26 , Jun 4, 2009
                                                    • 0 Attachment
                                                      --- In ntb-clips@yahoogroups.com, "Sheri" <silvermoonwoman@...> wrote:
                                                      >
                                                      > Hi Flo,
                                                      >
                                                      > FWIW, More on Findstr:
                                                      >
                                                      > Its regex features are quite limited, e.g., vertical bar, plus sign and question mark have no special meaning.
                                                      >
                                                      > Findstr search strings can be stored in a file read with /G: parameter (one string per line, where lines are "or'ed"). If read from a file, ansi characters with high decimal values lik "ß" work fine. But if such characters are included on the command line, e.g., in ^$GetOutPut$, they won't work.
                                                      >
                                                      > Regards,
                                                      > Sheri

                                                      Thanks for these hints, Sheri! I've tested some "ß". When stored in a file, it works fine.

                                                      Flo
                                                    • chilli_palmer@sbcglobal.net
                                                      ... version 3 was released, so it hasn t really been raised by half overnight. ... The FREE PRGrep worked perfectly well. Once it identified the text files
                                                      Message 26 of 26 , Jun 7, 2009
                                                      • 0 Attachment
                                                        --- In ntb-clips@yahoogroups.com, Jane Sedgewick <jane_sedgewick@...>
                                                        wrote:
                                                        >
                                                        > Actually, Powergrep has been $149 since at least 2005 around the time
                                                        version 3 was released, so it hasn't really been raised by half
                                                        overnight.
                                                        >
                                                        >
                                                        >
                                                        > Jane

                                                        The FREE PRGrep worked perfectly well. Once it identified the text
                                                        files with the information, opening and finishing up with Notetab was
                                                        just great.

                                                        The best thing out of this whole experience is being referred to these
                                                        groups by Fookes support email, and you guys letting me know to upgrade
                                                        from 4.95 to 6.1 which I love.

                                                        Thanks again!



                                                        [Non-text portions of this message have been removed]
                                                      Your message has been successfully submitted and would be delivered to recipients shortly.