मैं ("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)))))
~^के बारे में नहीं पता था; अच्छा! –
दुर्भाग्य से यह Emacs "elisp" में काम नहीं करता है। उनके पास एक अलग प्रारूप समारोह है। क्या Emacs में ऐसा करने के लिए कोई तुलनीय तरीका है? – killdash9
@ रुस: शायद। एक कुरकुरा जादूगर नहीं होने के कारण, मैं मूल लिस्प में वापस गया ... '(शामिल होने के लिए स्ट्रिंग (चीज और आराम तार) (लेबल ((रिकर्सर (तार) (cond ((> (लंबाई तार) 1) (सूची (कार तार) बात संलग्न() (recurser (सीडीआर तार)))) (टी (विपक्ष (कार तार) नहीं के बराबर))))) (लागू 'concat (recurser तार)))) ' –