unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* regexp replace
@ 2023-03-11 10:54 Emanuel Berg
  0 siblings, 0 replies; only message in thread
From: Emanuel Berg @ 2023-03-11 10:54 UTC (permalink / raw)
  To: help-gnu-emacs

Hey, this idea is stupid, right, it shouldn't matter what
direction you go?

;;; -*- lexical-binding: t -*-
;;
;; this file:
;;   https://dataswamp.org/~incal/emacs-init/regexp.el

(require 'cl-lib)
(require 'dwim)

(defun replace-regexp-1 (re rep &optional beg end rev)
  (interactive
   `(,(read-string "regexp: ")
     ,(read-string "replace: ")
     ,@(use-region t)
     ,current-prefix-arg))
  (or beg (setq beg (point-min)))
  (or end (setq end (point-max)))
  (pcase-let ((`(,start ,sfun ,stop) (if rev
                                         (list end #'re-search-backward beg)
                                       (list beg #'re-search-forward end) )))
    (save-excursion
      (goto-char start)
      (let ((c 0))
        (while (apply sfun re stop '(t))
          (cl-incf c)
          (replace-match rep) )
        (message "matches replaced: %d" c) ))))

(defalias 'rr #'replace-regexp-1)

(provide 'regexp)

-- 
underground experts united
https://dataswamp.org/~incal




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-03-11 10:54 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-11 10:54 regexp replace Emanuel Berg

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).