help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to read an integer from the minibuffer


From: Yuri Khan
Subject: Re: How to read an integer from the minibuffer
Date: Tue, 16 Nov 2021 14:37:29 +0700

On Tue, 16 Nov 2021 at 13:41, Emanuel Berg via Users list for the GNU
Emacs text editor <help-gnu-emacs@gnu.org> wrote:

> (defun string-to-number-number (str)
>   (if (string= str "0")
>       0
>     (let ((num (string-to-number str)))
>       (unless (zerop num)
>         num) )))
> ;; (string-to-number-number "10")
> ;; (string-to-number-number "1.5")
> ;; (string-to-number-number "0")
> ;; (string-to-number-number "-1.5")
> ;; (string-to-number-number "-10")
> ;; (string-to-number-number "not a number") ; nil

‘string-to-number’ has one more deficiency — it ignores additional
non-digit characters.

M-: (string-to-number "123foo")
⇒ 123 (#o173, #x7b, ?\{)

You cannot build anything strict on such a lax parser.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]