string - 接受数字或字符
问题描述
我知道我可以用它(every #'digit-char-p str)
来检查每个字符是数字还是(every #'alpha-char-p str)
字符。问题是如果单词包含字母或数字但不包含 + 等符号,我想接受。Hello1 应该返回 true 但不是 Hello1-。有谁知道该怎么做?
解决方案
every
的第一个参数是一个函数(实际上是一个函数指示符):你可以把任何你想要的函数放在那里。在这种情况下,正如评论中所提到的,有一个由语言定义的函数可以执行您想要的操作,但如果没有,您可以编写一个:
(every (lambda (c) (or (digit-char-p c) (alpha-char-p c))) ...)
或(every (lambda (c) (and (explodablep c) (green c))) ...)
。或者你想要的任何东西。
推荐阅读
- angularjs - 发出补丁请求时出错
- jquery - 滴是如何做这个 div 动画的?
- javascript - jQuery HTML 验证不适用于操作的 DOM 元素
- haskell - 有没有像`>>`这样的标准函数,但返回第一个操作数的结果?
- kubernetes - Kubelet 在启动时失败:无法从输出中检测时钟速度:“”
- java - REFER 方法 - JAIN SIP API - JAVA - 呼叫转移
- postgresql-9.4 - 在 postgresql 中转换为日期的 case 语句
- c# - 从 startup.cs 检查令牌有效性
- java - java:将字符串转换为希腊字符
- python - Python Flask:单击通过单击另一个按钮呈现的按钮