如何通过关键字提取表中的元素?
setq we ("a,123,111" "b,321,222" "c,345,333")如何通过关键字a提取a,123,111或关键字b提取b,321,222或关键字c提取c,345,333? 自己先顶一下 ;;; by USER2128:(defun aaa (lst key)
(car (vl-remove 'nil (mapcar '(lambda(x)
(if (= (strcase (substr x 1 (strlen key))) (strcase key))
x nil)) lst)))
)
(setq lst '("a,123,111" "b,321,222" "c,345,333"))
;;; (aaa lst "a,") ==> "a,123,111"
;;; (aaa lst "B,") ==> "b,321,222"
;;; (aaa lst "c")==> "c,345,333"
(cdr (assoc key (mapcar '(lambda(x) (cons (substr x 1 1) x)) lst))) (car (vl-member-if '(lambda(x) (wcmatch x "a*")) lst)) USER2128 发表于 2015-12-6 08:00 static/image/common/back.gif
谢谢 lijiao 发表于 2015-12-6 10:11 static/image/common/back.gif
(cdr (assoc key (mapcar '(lambda(x) (cons (substr x 1 1) x)) lst)))
谢谢!! ivde 发表于 2015-12-6 10:46 static/image/common/back.gif
(car (vl-member-if '(lambda(x) (wcmatch x "a*")) lst))
谢谢!!! 好东西值得分享
页:
[1]