我有以下代码尝试从字符串中删除非数字:
(apply str
(flatten
(map
(fn[x]
(if (number? x) x))
"ij443kj"
)
)
)
Run Code Online (Sandbox Code Playgroud)
但它总是返回一个空字符串而不是"443".有谁知道我在这里做错了什么以及如何获得理想的结果?
deo*_*ong 17
数?不这样做.它检查类型.如果你传递一个角色,无论角色是什么,你每次都会得到假.
我可能会使用正则表达式,但如果你想对程序保持相同的想法,你可以做类似的事情
(apply str (filter #(#{\0,\1,\2,\3,\4,\5,\6,\7,\8,\9} %) "abc123def"))
Run Code Online (Sandbox Code Playgroud)
甚至更好
(apply str (filter #(Character/isDigit %) myString))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4528 次 |
| 最近记录: |