emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 4848bdf98b8: ; Minor fixes of recently-installed regexp documenta


From: Eli Zaretskii
Subject: master 4848bdf98b8: ; Minor fixes of recently-installed regexp documentation changes
Date: Thu, 22 Jun 2023 01:33:15 -0400 (EDT)

branch: master
commit 4848bdf98b8579a1e704441f600d607ed6941024
Author: Eli Zaretskii <eliz@gnu.org>
Commit: Eli Zaretskii <eliz@gnu.org>

    ; Minor fixes of recently-installed regexp documentation changes
    
    * doc/emacs/search.texi (Regexps):
    * doc/lispref/searching.texi (Regexp Special): Keep the old
    terminology as "a.k.a.".
    (Char Classes, POSIX Regexps, POSIX Regexps): Add cross-references
    to where "bracket expression" is defined.  (Bug#64128)
---
 doc/emacs/search.texi      |  3 ++-
 doc/lispref/searching.texi | 65 ++++++++++++++++++++++++----------------------
 2 files changed, 36 insertions(+), 32 deletions(-)

diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi
index 2a816221235..e8e79888ed8 100644
--- a/doc/emacs/search.texi
+++ b/doc/emacs/search.texi
@@ -1037,7 +1037,8 @@ starting at the first @samp{a}, it does.
 @cindex set of alternative characters, in regular expressions
 @cindex character set, in regular expressions
 @item @kbd{[ @dots{} ]}
-is a @dfn{bracket expression}, which matches one of a set of characters.
+is a @dfn{bracket expression} (a.k.a.@: @dfn{set of alternative
+characters}), which matches one of a set of characters.
 
 In the simplest case, the characters between the two brackets are what
 this set can match.  Thus, @samp{[ad]} matches either one @samp{a} or
diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi
index 7c9893054d9..a0289d1f3cd 100644
--- a/doc/lispref/searching.texi
+++ b/doc/lispref/searching.texi
@@ -375,11 +375,13 @@ permits the whole expression to match is @samp{d}.)
 
 @item @samp{[ @dots{} ]}
 @cindex bracket expression (in regexp)
+@cindex character alternative (in regexp)
 @cindex @samp{[} in regexp
 @cindex @samp{]} in regexp
-is a @dfn{bracket expression}, which begins with @samp{[} and is
-terminated by @samp{]}.  In the simplest case, the characters between
-the two brackets are what this bracket expression can match.
+is a @dfn{bracket expression} (a.k.a.@: @dfn{character alternative}),
+which begins with @samp{[} and is terminated by @samp{]}.  In the
+simplest case, the characters between the two brackets are what this
+bracket expression can match.
 
 Thus, @samp{[ad]} matches either one @samp{a} or one @samp{d}, and
 @samp{[ad]*} matches any string composed of just @samp{a}s and @samp{d}s
@@ -478,10 +480,10 @@ style; and although @samp{[*--]} is valid, @samp{[*+,-]} 
is clearer.
 
 @item @samp{[^ @dots{} ]}
 @cindex @samp{^} in regexp
-@samp{[^} begins a @dfn{complemented bracket expression}.  This
-matches any character except the ones specified.  Thus,
-@samp{[^a-z0-9A-Z]} matches all characters @emph{except} ASCII letters and
-digits.
+@samp{[^} begins a @dfn{complemented bracket expression}, or
+@dfn{complemented character alternative}.  This matches any character
+except the ones specified.  Thus, @samp{[^a-z0-9A-Z]} matches all
+characters @emph{except} ASCII letters and digits.
 
 @samp{^} is not special in a bracket expression unless it is the first
 character.  The character following the @samp{^} is treated as if it
@@ -588,13 +590,13 @@ an unquoted @samp{[} is special again and a @samp{]} not.
 @cindex alpha character class, regexp
 @cindex xdigit character class, regexp
 
-  Below is a table of the classes you can use in a bracket
-expression, and what they mean.  Note that the @samp{[} and @samp{]}
-characters that enclose the class name are part of the name, so a
-regular expression using these classes needs one more pair of
-brackets.  For example, a regular expression matching a sequence of
-one or more letters and digits would be @samp{[[:alnum:]]+}, not
-@samp{[:alnum:]+}.
+  Below is a table of the classes you can use in a bracket expression
+(@pxref{Regexp Special, bracket expression}), and what they mean.
+Note that the @samp{[} and @samp{]} characters that enclose the class
+name are part of the name, so a regular expression using these classes
+needs one more pair of brackets.  For example, a regular expression
+matching a sequence of one or more letters and digits would be
+@samp{[[:alnum:]]+}, not @samp{[:alnum:]+}.
 
 @table @samp
 @item [:ascii:]
@@ -2993,6 +2995,24 @@ POSIX does not define how other BRE escapes behave;
 for example, GNU @command{grep} treats @samp{\|} like Emacs does,
 but does not support all the Emacs escapes.
 
+@item
+In POSIX BREs, it is an implementation option whether @samp{^} is special
+after @samp{\(}; GNU @command{grep} treats it like Emacs does.
+In POSIX EREs, @samp{^} is always special outside of bracket expressions,
+which means the ERE @samp{x^} never matches.
+In Emacs regular expressions, @samp{^} is special only at the
+beginning of the regular expression, or after @samp{\(}, @samp{\(?:}
+or @samp{\|}.
+
+@item
+In POSIX BREs, it is an implementation option whether @samp{$} is
+special before @samp{\)}; GNU @command{grep} treats it like Emacs
+does.  In POSIX EREs, @samp{$} is always special outside of bracket
+expressions (@pxref{Regexp Special, bracket expressions}), which means
+the ERE @samp{$x} never matches.  In Emacs regular expressions,
+@samp{$} is special only at the end of the regular expression, or
+before @samp{\)} or @samp{\|}.
+
 @item
 In POSIX EREs @samp{@{}, @samp{(} and @samp{|} are special,
 and @samp{)} is special when matched with a preceding @samp{(}.
@@ -3005,23 +3025,6 @@ POSIX does not define how other ERE escapes behave;
 for example, GNU @samp{grep -E} treats @samp{\1} like Emacs does,
 but does not support all the Emacs escapes.
 
-@item
-In POSIX BREs, it is an implementation option whether @samp{^} is special
-after @samp{\(}; GNU @command{grep} treats it like Emacs does.
-In POSIX EREs, @samp{^} is always special outside of bracket expressions,
-which means the ERE @samp{x^} never matches.
-In Emacs regular expressions, @samp{^} is special only at the
-beginning of the regular expression, or after @samp{\(}, @samp{\(?:}
-or @samp{\|}.
-
-@item
-In POSIX BREs, it is an implementation option whether @samp{$} is special
-before @samp{\)}; GNU @command{grep} treats it like Emacs does.
-In POSIX EREs, @samp{$} is always special outside of bracket expressions,
-which means the ERE @samp{$x} never matches.
-In Emacs regular expressions, @samp{$} is special only at the
-end of the regular expression, or before @samp{\)} or @samp{\|}.
-
 @item
 In POSIX BREs and EREs, undefined results are produced by repetition
 operators at the start of a regular expression or subexpression



reply via email to

[Prev in Thread] Current Thread [Next in Thread]