#99 Article 1015 Posted at 1995/12/11 02:52:24 by BAA (MAP5104) [SAHOU.2]

Subject: Re: Re: プログラミング作法・お題2 /1014 /995

emacs lisp です。

(defun count-strings-in-file (file string)
  (interactive "fFilename: \nsSearch String: \n")
  (let ((n 0))
    (save-excursion
      (set-buffer (find-file-noselect file))
      (setq case-fold-search nil)
      (goto-char (point-min))
      (while (search-forward string nil t)
	(setq n (1+ n)))
      (kill-buffer (current-buffer)))
    (if (interactive-p) (message "%d"n))
    n))

全然 lisp らしくないですね。でも、この手の処理は emacs lisp の
得意中の得意です。

私は、普通なら awk や perl を使う処理も、emacs でやってしまう
事が多いです。ただ、大きな欠点は 32 Mbyte までのファイルしか扱
えない事。

	BAA