(?:subpattern) by itself makes the parentheses non-capturing. But
(?letters:subpattern) sets GREP options that apply just to the subpattern
within the parentheses. (The alternative is (?letters) which sets GREP options
that apply to everything that comes after it in the pattern.)
The ?s
Overkill is a great way to learn.
Experimenting further I got my solution to fail when AAA and/or BBB was not
by itself.
Now I am trying to figure out what the *?s:* colon business is in your
solution (?<=^AAA\n)(?s:.*?)(?=^BBB$)
pg 197 of manual for version 12.6.7
These options can
Only the OP knows exactly what the delimiter rule is — any occurrence of AAA
and BBB, or as words, or as complete lines … — so the best way to code the
delimiters isn’t clear, but aside from that, I agree completely. Using pre- and
post-assertions to match just the string to be removed is
On Saturday, September 18, 2021 at 10:01:50 AM UTC-7 Neil Faiman wrote:
> Use this “Find” string: (?s)(?<=\bAAA\b).*?(?=\bBBB\b)
>
Neil's solution encouraged me to learn about "Pattern Modifiers", e.g.
(?imsx)
And I am able to parse the look around aspects of his solution... but isn't
it
Cmd-F to open the search dialog.
Use this “Find” string: (?s)(?<=\bAAA\b).*?(?=\bBBB\b)
Make sure “Grep” and “Case sensitive” are checked.
Make the “Replace” string empty.
Click “Replace All”.
\bAAA\b and \bBBB\b match “AAA” and “BBB” only when they appear as complete
words. If that isn’t
I have a thousands of word file with the contents I want to delete.
All the contents I want to delete are between exactly the same two
specified words.
How do I replace or remove the contents?
For example
AAA
***
***
***
***
***
BBB