lisp 非纯数值文字数字加减值
答案:1 悬赏:40 手机版
解决时间 2021-03-20 01:49
- 提问者网友:太高姿态
- 2021-03-19 14:27
lisp 非纯数值文字数字加减值
最佳答案
- 五星知识达人网友:逐風
- 2021-03-19 16:07
先把非数字部分提取出来 设为 a,再转换为数字 设为 b,然后 将 a 和 b+N 连接起来即可。
(defun make-adder (n)
(lambda (it)
(format nil
"~a~a"
(regex-replace-all "[0-9]" it "")
(+ n (parse-integer (regex-replace-all "[^0-9]" it ""))))))
;example
(mapcar (make-adder 44) '("A01" "A02" "A03" "A04"))
(defun make-adder (n)
(lambda (it)
(format nil
"~a~a"
(regex-replace-all "[0-9]" it "")
(+ n (parse-integer (regex-replace-all "[^0-9]" it ""))))))
;example
(mapcar (make-adder 44) '("A01" "A02" "A03" "A04"))
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯