我想將("USERID=XYZ" "USERPWD=123")
轉換爲"USERID=XYZ&USERPWD=123"
。我試過在列表中連接字符串的規範方式是什麼?
(apply #'concatenate 'string '("USERID=XYZ" "USERPWD=123"))
這將返回""USERID=XYZUSERPWD=123"
。
但我不知道如何插入'&'?以下功能起作用,但似乎有點複雜。
(defun join (list &optional (delim "&"))
(with-output-to-string (s)
(when list
(format s "~A" (first list))
(dolist (element (rest list))
(format s "~A~A" delim element)))))
不知道〜^;太好了! – 2012-01-12 18:42:37
這不幸在Emacs「elisp」中不起作用。他們有不同的格式功能。在Emacs中有沒有類似的方法可以做到這一點? – killdash9 2013-10-25 23:18:20
@russ:可能。不是elisp嚮導,我回到了基本的Lisp ...'(defun join-to-str(東西和其他字符串) (標籤 ((recurser(字符串) (cond((>(length strings)1) (追加(名單(車字符串) 東西) (recurser(CDR字符串)))) (T (缺點(車字符串)無))))) (申請「CONCAT(recurser字符串)))) ' – 2013-10-26 20:47:17