请教一个LISP编程的问题。

如何判断一个字符串是否为数字?我的意思是选取一个实体后,判断它是否是数字,比如‘123’是,‘B4’不是。... 如何判断一个字符串是否为数字?我的意思是选取一个实体后,判断它是否是数字,比如 ‘123’是,‘B4’不是。 展开
 我来答
百度网友f646a3a
2010-07-20 · 超过37用户采纳过TA的回答
知道小有建树答主
回答量:87
采纳率:0%
帮助的人:82万
展开全部
给你个代码.

;;; 确定字符串是否为数字
;;; ==================================================================
;;; (strIsNum str)
;;; 确定字符串是否为数字
;;; ------------------------------------------------------------------
;;; 参数:
;;; Str str 检查的字符串
;;; ------------------------------------------------------------------
;;; Returns:
;;; [LOG] T :字符串为数字, F 字符串不是数字
;;; Example: (setq a '123')
;;; (setq b '1B5')
;;; (strIsNum a) 返回 T
;;; (strIsNum b) 返回 F
;;; ------------------------------------------------------------------
(defun $xdlsp_string_isNum (str / ascList n len return char)
(setq ascList ($xdlsp_string->ascii str))
(setq n 0)
(setq return T)
(setq len (length ascList)
i 0
)
(while (and
return
(< n len)
)
(setq char (nth n ascList)
i (1+ i)
)
(cond
((or
(= char 43)
(= char 45)
)
(if (/= i 1)
(setq return nil)
(setq return t)
)
)
((and
(>= char 48)
(<= char 57)
)
(setq return t)
)
((= char 46)
(setq return t)
)
(t
(setq return nil)
)
)
(setq n (1+ n))
) ; _ end of while
return
)
;;; _ end of defun
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式