help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: sorting a list


From: David Hansen
Subject: Re: sorting a list
Date: Thu, 17 Apr 2008 08:34:36 +0200
User-agent: Gnus/5.110009 (No Gnus v0.9) Emacs/23.0.60 (gnu/linux)

On Thu, 17 Apr 2008 06:18:39 +0000 (UTC) Seweryn Kokot wrote:

> Assume I have a list
>
> '(("abc" "xxsx") 
>   ("zdfa" "xxsx") 
>   ("dddbc" "xxsx") 
>   ("cabc" "xxsx"))
>
> How to sort the list according to the first element in the lists so to
> get
>
> '(("abc" "xxsx")
>   ("cabc" "xxsx")
>   ("dddbc" "xxsx")
>   ("zdfa" "xxsx"))
>

(sort '(("abc" "xxsx") 
        ("zdfa" "xxsx") 
        ("dddbc" "xxsx") 
        ("cabc" "xxsx"))
      #'(lambda (list1 list2)
          (string< (car list1) (car list2))))

(("abc" "xxsx") ("cabc" "xxsx") ("dddbc" "xxsx") ("zdfa" "xxsx"))

or if you like the cl equivalent more:

(sort* '(("abc" "xxsx") 
        ("zdfa" "xxsx") 
        ("dddbc" "xxsx") 
        ("cabc" "xxsx"))
       #'string<
       :key #'car)

(("abc" "xxsx") ("cabc" "xxsx") ("dddbc" "xxsx") ("zdfa" "xxsx"))






reply via email to

[Prev in Thread] Current Thread [Next in Thread]