all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / 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

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.