[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
count matches in string, not region?
From: |
Emanuel Berg |
Subject: |
count matches in string, not region? |
Date: |
Wed, 26 Feb 2020 05:29:34 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux) |
This [last] I wrote a couple of nights ago, it
is part of my ISBN stuff [1] that will soon be
a MELPA package, God willing. But more on that
if and when it happens...
Anyway as you see the 4th line doesn't look
good, instead of moving the point one would
like to invoke the/a count function with the
already-fetched isbn-as argument.
So is there a count-matches-in-string or
something to that extent anywhere, that you are
aware of?
3.1415-out
(defun check-isbn-at-point ()
(interactive)
(let*((isbn-string (thing-at-point 'symbol t))
(num-digits (count-matches "[[:digit:]]" (point) (progn (forward-symbol
1) (point))))
(check-digit (if (> num-digits 10)
(checksum-isbn-13 isbn-string)
(checksum-isbn-10 isbn-string) )))
(message "check digit: %s" check-digit)
))
(defalias 'ciap #'check-isbn-at-point)
[1] https://dataswamp.org/~incal/emacs-init/isbn-new.el
--
underground experts united
http://user.it.uu.se/~embe8573
https://dataswamp.org/~incal