[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bep] wmail support mode?
- To: bep@argv.org
- Subject: Re: [bep] wmail support mode?
- From: TAKAHASHI Naoto <ntakahas@m17n.org>
- Date: Thu, 5 Jul 2001 11:31:21 +0900 (JST)
- Delivered-To: mailing list bep@argv.org
- Mailing-List: contact bep-help@argv.org; run by ezmlm
- User-Agent: SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.2 Emacs/21.0.104 (sparc-sun-solaris2.8) MULE/5.0 (SAKAKI)
n高橋です。
Koichi INOUE writes:
> 文字列「\\\\」(\が四つ)をプログラム中に記述するときは、
> "\\\\\\\\"
> と8個にしないといけなくなります。
関数 search-forward の中なら8個ですが、re-search-forward の中だと16個
必要になります。Lisp の文字列定数の中、つまりダブルクオートでくくった
中では1個の \ を表すために \\ と書く必要があるのでまず2倍、次に正規表
現の中で1個の \ を表すために \\ と書く必要があるので更に2倍、合わせて4
倍です。
(search-forward "\\\\") の場合:
Lisp にとっては "\\" という文字列を探せという命令になる。
(re-search-forward "\\\\" の場合:
Lisp にとっては "\\" という正規表現を探せという命令になる。
正規表現としての "\\" は "\" という文字列を意味する。
それから、プログラム中で re-search-forward する場合は、とりあえず
(re-search-forward "abc" nil t) のように最後に nil と t という引数を付
けておいた方がいいと思います。C-h f すれば説明が出てきますが、最初は読
んでもわかりにくいかもしれません。
>> あと、もう一つおもしろかったのは、\|を使って検索した場合、まず最初に指
>> 定した文字列を検索して、それがなかった場合にだけ二番目の文字列を検索する、
>> みたいになっているんですね。
> え?そういうことはないと思うのですが、違うかな?
> そういう前提だといろいろ不都合が出てくる気がするのですが。
> たとえば、Emacsの起動時に現れる This bufferで始まる文章の最初にカーソ
> ルを置いて
> M-x re-search-forward
> で v\|er を検索すると、ちゃんと最初のbufferに止まります。
井上さんの言うとおりになっているはずです。
>> の(cons)は、なにをする関数なのでしょう?
> これはn高橋さんが積み残したと言っておられたlistの説明を待つ方がいいか
> も知れませんが、
> (cons 'a 'b)
> でcarが'a cdrが'bのcons cellを作るということになってます。
> うう、説明を書こうとしましたが、今考えていると首になりそうなのでやめて
> おきます。(^^;)
説明を書き始めてみたのですが、今やっていると首になりそうなので後でまと
めます。(^^;)
しばしお待ちを。
--
TAKAHASHI Naoto
ntakahas@...
http://www.m17n.org/ntakahas/