From: Mattias EngdegÄrd Date: Sun, 15 Dec 2019 21:17:11 +0000 (+0100) Subject: More precise 'regexp-opt' documentation X-Git-Tag: emacs-27.0.90~333 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=d55f2f74f53910c4416be1e023771dc3a8142727;p=emacs.git More precise 'regexp-opt' documentation * lisp/emacs-lisp/regexp-opt.el (regexp-opt): * doc/lispref/searching.texi (Regexp Functions): Be more specific about how the KEEP-ORDER argument actually works. If nil, the regexp guarantees a longest match; this is the behaviour that many callers implicitly rely on. --- diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi index 700880c2289..c8d263d972e 100644 --- a/doc/lispref/searching.texi +++ b/doc/lispref/searching.texi @@ -1780,11 +1780,11 @@ if it is necessary to ensure that a postfix operator appended to it will apply to the whole expression. @end table -The optional argument @var{keep-order}, if @code{nil} or omitted, -allows the returned regexp to match the strings in any order. If -non-@code{nil}, the match is guaranteed to be performed in the order -given, as if the strings were made into a regexp by joining them with -the @samp{\|} operator. +The optional argument @var{keep-order}, if non-@code{nil}, forces the +match to be performed in the order given, as if the strings were made +into a regexp by joining them with the @samp{\|} operator. If nil or +omitted, the returned regexp will always match the longest string +possible. Up to reordering, the resulting regexp of @code{regexp-opt} is equivalent to but usually more efficient than that of a simplified diff --git a/lisp/emacs-lisp/regexp-opt.el b/lisp/emacs-lisp/regexp-opt.el index ab52003cdf7..c0921646d65 100644 --- a/lisp/emacs-lisp/regexp-opt.el +++ b/lisp/emacs-lisp/regexp-opt.el @@ -114,11 +114,11 @@ nil necessary to ensure that a postfix operator appended to it will apply to the whole expression. -The optional argument KEEP-ORDER, if nil or omitted, allows the -returned regexp to match the strings in any order. If non-nil, -the match is guaranteed to be performed in the order given, as if -the strings were made into a regexp by joining them with the -`\\|' operator. +The optional argument KEEP-ORDER, if non-nil, forces the match to +be performed in the order given, as if the strings were made into +a regexp by joining them with the `\\|' operator. If nil or +omitted, the returned regexp is will always match the longest +string possible. Up to reordering, the resulting regexp is equivalent to but usually more efficient than that of a simplified version: