Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure:生成所有键盘可键入的字符 上下文_Clojure - Fatal编程技术网

Clojure:生成所有键盘可键入的字符 上下文

Clojure:生成所有键盘可键入的字符 上下文,clojure,Clojure,我想生成可以由以下方式生成的所有字符: 开封便笺簿 按键盘上的单个键 按住shift键并按键盘上的单个键 我目前拥有的: 然后手动添加更多字符,如~!@$%^&*_+{}|:?,./;'[]\ 问题 有没有更优雅的方法 编辑 是的,我指的是美国Qwerty键盘。使用以下地图表单将生成您想要的字符 (map #(str (char %)) (range 32 127)) 使用以下地图表单将生成所需的字符 (map #(str (char %)) (range 32 127)) 如果你看a,你想

我想生成可以由以下方式生成的所有字符:

开封便笺簿 按键盘上的单个键 按住shift键并按键盘上的单个键 我目前拥有的: 然后手动添加更多字符,如~!@$%^&*_+{}|:?,./;'[]\

问题 有没有更优雅的方法

编辑
是的,我指的是美国Qwerty键盘。

使用以下地图表单将生成您想要的字符

(map #(str (char %)) (range 32 127))

使用以下地图表单将生成所需的字符

(map #(str (char %)) (range 32 127))
如果你看a,你想要的所有字符似乎都在33到127之间。因此,获取所有这些字符序列的最简单方法是将该范围转换为字符

(map char (range 33 127))
但是,如果您试图验证字符串是否仅包含这些字符,请使用如下函数:

(defn valid-char? [c]
  (let [i (int c)] 
    (and (> i 32) (< i 127))))
如果你看a,你想要的所有字符似乎都在33到127之间。因此,获取所有这些字符序列的最简单方法是将该范围转换为字符

(map char (range 33 127))
但是,如果您试图验证字符串是否仅包含这些字符,请使用如下函数:

(defn valid-char? [c]
  (let [i (int c)] 
    (and (> i 32) (< i 127))))

你说的是标准的美国QWERTY键盘,对吧?@Jeremy:是的,美国QWERTY。吹毛求疵,但你指的是标准的美国布局,而不是键盘。标准的美国QWERTY键盘完全可以配置成,比如说,按F12键生成,比如说,欧元符号。你说的是标准的美国QWERTY键盘,对吗?@Jeremy:是的,美国QWERTY。吹毛求疵,但你指的是标准的美国布局,而不是键盘。一个标准的美国QWERTY键盘完全可以配置成,比如说,按F12键生成,比如说,欧元符号。