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

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

RE: Sorting lines by length


From: Doug Lewan
Subject: RE: Sorting lines by length
Date: Tue, 16 Sep 2014 13:48:51 +0000

The code for (sort-lines) looks simple enough. Look at the definition of 
(sort-subr) (the last line of the definition of (sort-lines) in emacs 24.3). 
You could use something like the following for a predicate:

(defun compare-lengths (left right)
  "Return non-nil if the string LEFT is shorter than the RIGHT."
  (< (length left) (length right)))

,Doug
Douglas Lewan
Shubert Ticketing
(201) 489-8600 ext 224 or ext 4335

"This is a slow pup," he said continuing his ascent.

> -----Original Message-----
> From: address@hidden
> [mailto:address@hidden On
> Behalf Of Loris Bennett
> Sent: Tuesday, 2014 September 16 08:57
> To: address@hidden
> Subject: Sorting lines by length
> 
> Hi,
> 
> Is there a canonical way of sorting lines by length, longest first?
> 
> I have a file with which might look like this:
> 
> 7-Jan-2013 node025 node061
> 14-Jan-2013 node025 node034 node061
> 21-Jan-2013 node025 node034 node050 node061
> 28-Jan-2013 node025 node034 node061
> 4-Feb-2013 node025 node034 node061
> 11-Feb-2013 node025 node034 node061
> 18-Feb-2013 node034
> 25-Feb-2013 node034
> 11-Mar-2013 node025
> 
> I actually just need the longest line first.  For the example above
> this
> is quite easy to see, but in the real file, there are around 100 lines
> and the longest might have around 1000 characters.
> 
> My use case is reading the data into an R data frame.  The number of
> columns in the resulting data frame seems to be determined by the
> number
> of items in the first line.
> 
> Cheers,
> 
> Loris
> 
> --
> This signature is currently under construction.



reply via email to

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