[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Info [was Re: re-search beginning of line or whitespace]
From: |
Tim Johnson |
Subject: |
Info [was Re: re-search beginning of line or whitespace] |
Date: |
Fri, 4 Nov 2005 07:38:28 -0900 |
User-agent: |
Mutt/1.4.2.1i |
* Neon Absentius <absent@sdf.lonestar.org> [051103 11:45]:
> On Wed, Nov 02, 2005 at 08:19:14AM -0900, thus spake Tim Johnson:
> It is explained nicely in the elisp manual:
>
> ,----[ (info "(elisp) Regexp Special") ]
> | `\'
> | has two functions: it quotes the special characters (including
> | `\'), and it introduces additional special constructs.
> |
> | Because `\' quotes special characters, `\$' is a regular
> | expression that matches only `$', and `\[' is a regular expression
> | that matches only `[', and so on.
> |
> | Note that `\' also has special meaning in the read syntax of Lisp
> | strings (*note String Type::), and must be quoted with `\'. For
> | example, the regular expression that matches the `\' character is
> | `\\'. To write a Lisp string that contains the characters `\\',
> | Lisp syntax requires you to quote each `\' with another `\'.
> | Therefore, the read syntax for a regular expression matching `\'
> | is `"\\\\"'.
> `----
>
> You see, for the regular expression parser of emacs certain
> characters have to be escaped for example "|" when one uses it to
> indicate disjunction, so you write it "\|". However when you write
> a Lisp program the regexp is entered as a string, and since "\" is
> an elisp escape character a sting that contains "\|" is interpreted
> as "|". You don't want that, you want the string to pass to the
> "regexp machine" as is, you want the regexp to have "\|"; therefore
> you have to escape the slash thus "\\|".
>
> I hope this makes some sense.
Indeed. Thank you very much Neon.
FYI: I use both Xemacs and GNU emacs. I note that from emacs and
in invoking 'info' from the bash shell that I can not find
a Menu item for emacs or elisp. It looks as if those
components are not installed.
In Xemacs, info provides "Lispref: (lispref)" as a menu
item, which leads me to the regex topic.
For GNU emacs, how may I install these missing items?
cheers
tim
--
Tim Johnson <tim@johnsons-web.com>
http://www.alaska-internet-solutions.com
$B:G?78D<<3+J|(B, info, 2005/11/01