|
| From: | Glenn Morris |
| Subject: | bug#1518: `rx' making nested `or' forms in a `group' wrong |
| Date: | Tue, 09 Dec 2008 12:54:53 -0500 |
| User-agent: | Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) |
Derick Eddington wrote:
> This one is wrong:
>
> (rx (seq (group "foo" (or (or "asdf" "lkjh") "zab")) "bar"))
> =>
> "\\(foo\\(?:asdf\\|lkjh\\)\\|zab\\)bar"
Sorry, I don't see the problem. Breaking it down:
(or "asdf" "lkjh") -> "asdf\\|lkjh"
(or (or "asdf" "lkjh") "zab") -> "\\(?:asdf\\|lkjh\\)\\|zab"
(group "foo" (or (or "asdf" "lkjh") "zab"))
-> "\\(foo\\(?:asdf\\|lkjh\\)\\|zab\\)"
(seq (group "foo" (or (or "asdf" "lkjh") "zab")) "bar")
-> "\\(foo\\(?:asdf\\|lkjh\\)\\|zab\\)bar"
What is wrong?
| [Prev in Thread] | Current Thread | [Next in Thread] |