bug#2881: 23.0.91; inconsistent regexps with "explicitly numbered group"
Joe Corneli <[email protected]>
| Newsgroups | gmane.emacs.bugs,gmane.emacs.pretest.bugs |
|---|---|
| Message-ID | <[email protected]> |
What about the comparison between Form 4 and Form 5, which seems to not only go against the description of `\|' you quoted, but to contain another internal inconsistency (whether or not the final `}' is matched)? On Fri, Apr 3, 2009 at 3:55 PM, Andreas Schwab <[email protected]> wrote: > Joe Corneli <[email protected]> writes: > >> Please execute the following forms with C-x C-e. Form 1 >> and Form 3 return `t' (Yes, we are looking at the >> indicated regular expression), whereas Form 2 returns >> `nil' (even though from the Elisp reference page "34.3.1.3 >> Backslash Constructs in Regular Expressions", it appears >> that this form ought to return `t' like the others). > > `\|' applies to the largest possible surrounding expressions. > Only a surrounding `\( ... \)' grouping can limit the grouping > power of `\|'. > >> (let ((possible-environments >> "\\(?1:lisp\\)\\|\\(?1:idea\\)\\|\\(?1:common\\)") ) >> (looking-at >> (concat "\n*?\\\\begin{" >> possible-environments >> "}"))) > > > The three alternatives of this regexp are "\n*?\\\\begin{\\(?1:lisp\\)", > "\\(?1:idea\\)" and "\\(?1:common\\)". > > Andreas. > > -- > Andreas Schwab, [email protected] > GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 > "And now for something completely different." >